A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始



列举了一些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() 函数

作用是统计行号。

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



2 个回复

倒序浏览
值得学习ing!
回复 使用道具 举报
支持一下!!!!!!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马