SQL 总结

使用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())


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值