SQL 总结

来源:互联网 发布:淘宝男装店铺描述 编辑:程序博客网 时间:2024/06/16 11:45

使用ASP.net  ado.net 用sql 语句直接操作数据库时 判断是否为NULL要用 Is null 来判断 不能用=null。否则数据会查不出来

linq 中可以用=null 来判断


sql 在使用加减运算时 要注意

1:当值允许为空的字段 应用isnull处理 否则算出来的不正确  isnull(LingYongFenShu,0)-isnull(ZuoFeiFenShu,0)

 2:使用自带的Sum 函数计算时可以不用特殊处理值允许为空的字段

cast(avg(分数*1.0) as decimal(18,2))  平均分  cast是进行数据类型转化   分数*1.0 :因为数据库中份数设置成了int 类型 必须先让他乘以1.0 变成浮点型 然后再进行 否则算出来的值始终没有保留小数位数


在sql server 中执行带参数的存储过程及计算运行时间

  
    

--存储过程片断 
ALTER PROCEDURE [dbo].[CurrentPageInfo]

-- 获得某一页的数据--

@beginNo int = 0,                      --起始记录号(即从哪一条开始取)

@count int = 100,                      --取的结果集的总数

@resultColumns varchar(2000) = '*',           --需要得到的字段(column1,column2,......)

@tableName varchar(2000),                 --需要查看的表名(from table_name)

@condition varchar(2000) = '',            --查询条件(where condition......) 不用加where关键字

@orderByColumn varchar(100) = '',         --排序的字段名(order by column asc/desc)

@orderByType bit = 0,                     --排序的类型(0为升序,1为降序)

@indentColumn varchar(50) = ''            --自增长列名称

AS...
--存储过程片断 End


--sql 语句
declare
 @runTime datetime

set @runTime=getdate()

--exec 存储过程名 存储过程需要的参数,字符串用单引号括起,数字直接写,缺省用null代替

exec CurrentPageInfo 2,10,'bookid,bookname','bookinfo',null,'CreateTime',0,'ID'

select [语句执行花费时间(毫秒)]=datediff(ms,@runTime,getdate())