zoukankan      html  css  js  c++  java
  • 带有like的存储过程

    ALTER PROCEDURE dbo.getinfobycontent

    @pageindex int,

    @pagenum int,

    @content nvarchar(50),

    @recordcount int output

    AS

     select top (@pagenum) * from eq_info where  infocontent like '%'+@content+'%'

    and infoid not in (select top  (@pagenum*(@pageindex-1)) infoid from eq_info where infocontent like '%'+@content+'%') 

    select @recordcount =count(infoid) from eq_info where infocontent like '%'+@content+'%'

     RETURN

    @@ROWCOUNT:返回受上一语句影响的行数,任何不返回行的语句将该变量设为0;

    局部变量用一个@标识,全局变量用两个@(常用的全局变量一般都是已经定义好的);

    申明局部变量语法:declare @变量名 数据类型;例如:declare @num int;

    赋值:有两种方法式(@num为变量名,value为值)

    set @num=value;   或   select @num=value;

    如果想获取查询语句中的一个字段值可以用select给变量赋值,如下:

    select @num=字段名 from 表名 where ……

    在sql中,我们常常使用临时表来存储临时结果,对于结果是一个集合的情况,这种方法非常实用,但当结果仅仅是一个数据或者是几个数据时,还要去建一个表,显得就比较麻烦,另外,当一个sql语句中的某些元素经常变化时,比如选择条件,(至少我想)应该使用局部变量。当然ms   sql   server的全局变量也很有用。  

    > > > > 局部变量  

    声明:declare   @local_variable   data_type  

    @local_variable   是变量的名称。变量名必须以   at   符   (@)   开头。data_type   是任何由系统提供的或用户定义的数据类型。变量不能是   text、ntext   或   image   数据类型。  

    示例:  

    use   master   
    declare   @sel_type   char(2)   
    declare   @sel_cunt   numeric(10)   
    set   @sel_type   =   'u '/*user   table*/   
    set   @sel_cunt   =   10  

    /*返回系统中用户表的数目*/   
    select   @sel_cunt   =   count(*)   
    from   sysobjects   
    where   type   =   @sel_type  

    select   @sel_cunt   as   'user   table   ' 's   count '  

    如果要返回系统表的数目,可以用set   @sel_type   =   's '  

    可能这个例子并不能说明使用变量的好处,我只是想说明使用方法。当一组(几个甚至几十个)sql语句都使用某个变量时,就能体会到他的好处了。  

    > > > > 全局变量  

    全局变量是系统预定义的,返回一些系统信息,全局变量以两个at(@)开头。下面是我统计了一些较为常用的变量。  

    @@connections   
    返回自上次启动以来连接或试图连接的次数。  

    @@cursor_rows   
    返回连接上最后打开的游标中当前存在的合格行的数量。  

    @@datefirst   
    返回每周第一天的数字  

    @@error   
    返回最后执行的sql   语句的错误代码。  

    @@fetch_status   
    返回被   fetch   语句执行的最后游标的状态,而不是任何当前被连接打开的游标的状态。  

    @@identity   
    返回最后插入的标识值  

    @@langid   
    返回当前所使用语言的本地语言标识符(id)。  

    @@language   
    返回当前使用的语言名。  

    @@lock_timeout   
    返回当前会话的当前锁超时设置,单位为毫秒。  

    @@procid   
    返回当前过程的存储过程标识符   (id)   。  

    @@rowcount   
    返回受上一语句影响的行数。  

    @@servername   
    返回运行   的本地服务器名称。  

    @@spid   
    返回当前用户进程的服务器进程标识符   (id)。  

    @@trancount   
    返回当前连接的活动事务数。  

    @@version   
    返回当前安装的日期、版本和处理器类型。

    更多内容

  • 相关阅读:
    react路由组件&&非路由组件
    react函数式组件(非路由组件)实现路由跳转
    react使用antd组件递归实现左侧菜单导航树
    【LeetCode】65. Valid Number
    【LeetCode】66. Plus One (2 solutions)
    【LeetCode】68. Text Justification
    【LeetCode】69. Sqrt(x) (2 solutions)
    【LeetCode】72. Edit Distance
    【LeetCode】73. Set Matrix Zeroes (2 solutions)
    【LeetCode】76. Minimum Window Substring
  • 原文地址:https://www.cnblogs.com/LittleFeiHu/p/1971106.html
Copyright © 2011-2022 走看看