您的位置:首页 > 数据库

每日总结:sql 转换为int时发生算术溢出错误、DatePart()、DateAdd()、DateDiff()函数、Case when then

2013-03-25 22:09 507 查看
1、将 expression 转换为数据类型 int 时发生算术溢出错误
解析:
这个问题的出现是因为数据超大而引起的,为解决这个问题,只需要将将其转换为比int型存储范围更大的数据类型即可,这里可以将其转换为18位的2位精度的小数即可,如下:
Cast(字段 as decimal(18,2))
1、 Datepart()函数
该SQL函数主要用来获用于返回日期/时间的单独部分,比如年、月、日、小时、分钟等等。
语法:DATEPART(datepart,date)
date 参数是合法的日期表达式。datepart 参数可以是下列的值:
datepart
缩写

yy, yyyy
季度
qq, q

mm, m
年中的日
dy, y

dd, d

wk, ww
星期
dw, w
小时
hh
分钟
mi, n

ss, s
毫秒
ms
微妙
mcs
纳秒
ns
此外还有DATEADD() 函数
在日期中添加或减去指定的时间间隔。
语法
DATEADD(datepart,number,date)
date 参数是合法的日期表达式。number 是您希望添加的间隔数;对于未来的时间,此数是正数,对于过去的时间,此数是负数。
dateadd 参数值和datepart函数的参数值一样
DATEDIFF() 函数
返回两个日期之间的天数。
语法:
DATEDIFF(datepart,startdate,enddate)
startdate 和 enddate 参数是合法的日期表达式。
Depart参数值和datepart函数的参数值一样
2、 SQL Case when then
Case具有两种格式:
1) Case sex
When ‘0’ then ‘女’
When ‘1’ then ‘男’
Else ‘未知’ end
2) Case when sex=’0’ then ‘女’
When sex=’1’ then ‘男’
Else ‘未知’ end
这两种方法基本上功能都差不多,相对来讲第一种方法比较简洁,但是第二中方法比较灵活,可以进行复杂的判断
Case when then 方法多用于多条件判断,比较常用的就像上边的例子,数据库中存0或1 来表示男女,在查询展示的时候使用case when then即可实现该效果、
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐