MySQL常用函数

聚合函数(常用于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的最小整数值,(进一取整)

日期和时间函数

  • 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之间相差的天数

其他

  • 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
原文地址:https://www.cnblogs.com/tangxuliang/p/9078949.html