SQL常用函数

SQL常用函数

1.常用函数分为以下几种

(1) 字符串

(2) 数值函数

(3) 日期和时间函数

(4) 流程函数

(5) 其他

1.字符串

函数功能
CANCAT(S1,S2,…Sn)连接 S1,S2,…Sn 为一个字符串
INSERT(str,x,y,instr)将字符串 str 从第 x 位置开始,y 个字符长的子串替换为字符串 instr
LOWER(str)将字符串 str 中所有字符变为小写
UPPER(str)将字符串 str 中所有字符变为大写
LEFT(str ,x)返回字符串 str 最左边的 x 个字符
RIGHT(str,x)返回字符串 str 最右边的 x 个字符
LPAD(str,n ,pad)用字符串 pad 对 str 最左边进行填充,直到长度为 n 个字符长度
RPAD(str,n ,pad)用字符串 pad 对 str 最右边进行填充,直到长度为 n 个字符长度
LTRIM(str)去掉字符串 str 左侧的空格
RTRIM(str)去掉字符串 str 行尾的空格
REPEAT(str,x)返回 str 重复 x 次的结果
REPLACE(str,a,b)用字符串 b 替换字符串 str 中所有出现的字符串 a
STRCMP(s1,s2)比较字符串 s1 和 s2
TRIM(str)去掉字符串行尾和行头的空格
SUBSTRING(str,x,y)返回从字符串 str x 位置起 y 个字符长度的字串

2.数值函数

函数功能
ABS(x)返回 x 的绝对值
CEIL(x)返回大于 x 的最大整数值
FLOOR(x)返回小于 x 的最大整数值
MOD(x,y)返回 x/y 的模
RAND()返回 0 到 1 内的随机值
ROUND(x,y)返回参数 x 的四舍五入的有 y 位小数的值
TRUNCATE(x,y)返回数字 x 截断为 y 位小数的结果

3.日期和时间函数

函数功能
CURDATE()返回当前日期
CURTIME()返回当前时间
NOW()返回当前的日期和时间
UNIX_TIMESTAMP(date)返回日期 date 的 UNIX 时间戳
FROM_UNIXTIME返回 UNIX 时间戳的日期值
WEEK(date)返回日期 date 为一年中的第几周
YEAR(date)返回日期 date 的年份
HOUR(time)返回 time 的小时值
MINUTE(time)返回 time 的分钟值
MONTHNAME(date)返回 date 的月份名
DATE_FORMAT(date,fmt)返回按字符串 fmt 格式化日期 date 值
DATE_ADD(date,INTERVAL expr type)返回一个日期或时间值加上一个时间间隔的时间值
INTERVAL 是间隔类型关键字
expr 是一个表达式,这个表达式对应后面的类型
type 是间隔类型
DATEDIFF(expr,expr2)返回起始时间 expr 和结束时间 expr2 之间的天数

表: MySQL 中的日期时间格式

格式符格式说明
%S,%s两位数字形式的秒(00,01,…,59)
%i两位数字形式的分(00,01,…,59)
%H两位数字形式的小时,24 小时(00,01,…,23)
%h,%I两位数字形式的小时,12 小时(01,02,…,12)
%k数字形式的小时,24 小时(0,1,…,23)
%l数字形式的小时,12 小时(1,2,…,12)
%T24 小时的时间形式(hh:mm:ss)
%r12 小时的时间形式(hh:mm:ssAM 或 hh:mm:ssPM)
%pAM 或 PM
%W一周中每一天的名称(Sunday,Monday,…,Saturday)
%a一周中每一天名称的缩写(Sun,Mon,…,Sat)
%d两位数字表示月中的天数(00,01,…,31)
%e数字形式表示月中的天数(1,2,…,31)
%D英文后缀表示月中的天数(1st,2nd,3rd,…)
%w以数字形式表示周中的天数(0=Sunday,1=Monday,…,6=Saturday)
%j以 3 位数字表示年中的天数(001,002,…,366)
%U周(0,1,52),其中 Sunday 为周中的第一天
%u周(0,1,52),其中 Monday 为周中的第一天
%M月名(January,February,…,December)
表:MYSQL中的时间间隔类型
表达式类型描述格式
HOUR小时hh
MINUTEmm
SECONDss
YEARYY
MONTHMM
DAYDD
YEAR_MONTH年和月YY-MM
DAY_HOUR日和小时DD hh
DAY_MINUTE日和分钟DD hh:mm
DAY_ SECOND日和秒DD hh:mm:ss
HOUR_MINUTE小时和分hh:mm
HOUR_SECOND小时和秒hh:ss
MINUTE_SECOND分钟和秒mm:ss

4.流程函数

函数功能
IF(value,t f)如果 value 是真,返回 t;否则返回 f
IFNULL(value1,value2)如果 value1 不为空返回 value1,否则返回 value2
CASE WHEN [value1] THEN[result1]…ELSE[default]END如果 value1 是真,返回 result1,否则返回 default
CASE [expr] WHEN [value1]
THEN[result1]…ELSE[default]END
如果 expr 等于 value1,返回 result1,否则返回 default

5.其他函数

函数功能
DATABASE()返回当前数据库名
VERSION()返回当前数据库版本
USER()返回当前登录用户名
INET_ATON(IP)返回 IP 地址的数字表示
INET_NTOA(num)返回数字代表的 IP 地址
PASSWORD(str)返回字符串 str 的加密版本
MD5()返回字符串 str 的 MD5 值
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值