列举了一些SQL中的常用函数。
ABS() 求绝对值(让我想起了ABS防抱死系统) CEILING() 舍入到最大整数,-3.6舍入到-3 FLOOR() 舍入到最小整数,-3.6舍入到-4 ROUND() 四舍五入,ROUND(3.141, 2) 需要传入两个参数,前一个为操作数,后一个为精度
LEN() 计算字符串长度 LOWER() 转换为小写字符 UPPER() 转换为大写字符 LTRIM() 去左空格 RTRIM() 去右空格 SUBSTRING(string, start_position, lenth) 字符串截取函数,从start_position处开始截取长度为lenth
GETDATE() 取当前日期 DATEADD(datepart, number, date) 函数用于计算增量后的日期,datepart 是计量单位,date 是需要操作的日期 datepart 可选取:year, quarter, month, dayofyear, day, week, weekday, hour, minute, second DATEDIFF(datepart, startdate, enddate) 根据datepart求得两个日期之间的差值 DATEPART(datepart, date) 返回日期的指定部分
CAST(expression as type) CONVERT(type, expression)
ISNULL(expression, value) 判断若 expression 不为空返回 expression,否则返回 value select ISNULL(name, '佚名') from Person
类似于 switch case 语句。 CASE expression WHEN value1 THEN return1 WHEN value2 THEN return2 ELSE return3 END 当 when 后做范围判断时,case后可以没有表达式。
作用是统计行号。 ROW_NUMBER()是开窗函数,不能出现在 where 中,只能出现在 select、order by 中。 select * from (select ROW_NUMBER() OVER(order by salary) as rownum, id, name, from Person) as e1 where e1.rownum > 3 and e1.rownum < 5 这样可以随意取到想要的数据行。
-The End- © Jervis
|