欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Mysql函数记录详解

程序员文章站 2022-06-24 20:19:32
聚合函数(常用于GROUP BY从句的SELECT查询中) 下面几个函数会忽略值为NULL的行 AVG(col) 返回指定列的平均值 COUNT(col) 返回指定列中非NUL...
聚合函数(常用于GROUP BY从句的SELECT查询中)

下面几个函数会忽略值为NULL的行

AVG(col) 返回指定列的平均值 COUNT(col) 返回指定列中非NULL值/行的个数(当函数参数为星号*时不会忽略) MIN(col) 返回指定列的最小值 MAX(col) 返回指定列的最大值 SUM(col) 返回指定列的所有值之和 GROUP_CONCAT(col) 返回由属于一组的列值连接组合而成的结果

字符串

CONCAT(s1,s2…,sn):将s1,s2…,sn连接成字符串 SUBSTRING(str,start,length):在str中从start开始截取length个字符长度 CHAR_LENGTH(str):返回字符串str的字符长度 LENGTH(str):返回字符串str的字节长度 INSTR(str,substr):返回字符串str中子字符串的第一个出现位置 INSERT(str,start,length,newstr):返回字符串str从start开始的length长度被字符串newstr取代的字符 STRCMP(expr1,expr2):字符串比较(相等返回0,expr1>expr2返回1,expr2>expr1返回-1)

数学

ROUND(x,y):返回参数x的四舍五入的有y位小数的值(四舍五入)

-FLOOR(x):返回小于x的最大整数值,(去掉小数取整)

-CEILING(x):返回大于x的最小整数值,(进一取整)

其他

LAST_INSERT_ID():返回最后一个INSERT或 UPDATE 问询为 AUTO_INCREMENT列设置的第一个 发生的值 ROW_COUNT():返回被前面语句升级的、插入的或删除的行数 SLEEP(duration) :睡眠时间为duration 参数给定的秒数,然后返回 0。若 SLEEP() 被中断,它会返回 1 IF(expr1,expr2,expr3) :如果 expr1 是TRUE ,则返回expr2,否则返回expr3 IFNULL(expr1,expr2):假如expr1不为 NULL,则返回expr1,否则返回expr2

日期和时间函数

DATE_FORMAT(date,fmt):依照指定的fmt格式格式化日期date值 FROM_UNIXTIME(ts,fmt):根据指定的fmt格式,格式化UNIX时间戳ts MONTHNAME(date):返回date的月份名(英语月份,如October) DAYNAME(date):返回date的星期名(英语星期几,如Saturday) NOW():返回当前的日期和时间(如:2016-10-08 18:57:39) CURDATE() 或 CURRENT_DATE():返回当前的日期 CURTIME() 或 CURRENT_TIME():返回当前的时间 QUARTER(date):返回date在一年中的季度(1~4) WEEK(date):返回日期date为一年中第几周(0~53) DAYOFYEAR(date):返回date是一年的第几天(1~366) DAYOFMONTH(date):返回date是一个月的第几天(1~31) DAYOFWEEK(date):返回date所代表的一星期中的第几天(1~7) YEAR(date):返回日期date的年份(1000~9999) MONTH(date):返回date的月份值(1~12) DAY(date):返回date的天数部分 HOUR(time):返回time的小时值(0~23) MINUTE(time):返回time的分钟值(0~59) SECOND(time):返回time的秒值(0-59) DATE(datetime):返回datetime的日期值 TIME(datetime):返回datetime的时间值 DATEDIFF(expr,expr2) :返回起始时间 expr和结束时间expr2之间相差的天数