MYSQL函数总结

函数

 

聚合函数

COUNT() : 计算表中的记录数(行数)

SELECT COUNT(列名) FROM Product;  (下列函数表达式相同)

SUM() : 计算表中数值列中数据的合计值

AVG() : 计算表中数值列中数据的平均值

MAX() : 求出表中任意列中数据的最大值

MIN() : 求出表中任意列中数据的最小值

 

算术函数

ABS(数值) 绝对值函数

SELECT m, ABS(m) AS abs_col FROM SampleMath;

MOD(被除数,除数) 求余函数

ROUND(数值,保留小数的位数) 四舍五入函数

CEIL(数值)  向上取整

FLOOR(数值) 向下取整

PI() 返回圆周率

RAND() 返回一个小于1的随机数

SQRT(数值) 返回一个数的平方根

 

字符串函数

CONCAT(str1, str2) 拼接字符串

LENGTH(str) 字符串长度函数

Instr(字符串,子串) 返回子串第一次出现的索引值,如果没有则返回0

REGEXP 'expr' 正则表达式

SELECT name FROM person_tbl WHERE name REGEXP '^st';

NOT REGEXP

REGEXP_REPLACE()

REGEXP_SUBSTR()

 

字符串转换函数

LTRIM(str) 去除串左边的空格

RTRIM(str) 去除串右边的空格

LOWER(str) 小写转换函数

UPPER(str) 大写转换函数

REPLACE(被替换的str,传入的str) 替换字符串函数

SUBSTRING(str,索引) 字符串的截取函数

 

日期函数

CURRENT_DATE() 当前日期函数

SELECT CURRENT_DATE();

CURRENT_TIME()  当前时间函数

TIME() 返回日期时间的时间部分

DATE() 返回日期时间的日期部分

DATE_FORMAT() 返回格式化的日期或时间串

DATE_FORMAT(NOW(),'%b %d %Y %h:%i %p')

YEAR() 返回日期的年份部分

MONTH() 返回日期的月份部分

MONTHNAME() 返回日期对应月份的英文名

WEEK() 计算日期是一年中的第几周

WEEKOFYEAR() 计算某天位于一年中的第几周

DAY() 返回日期的天数部分

DAYOFYEAR() 返回日期是一年中的第几天

DAYOFMONTH() 返回日期在一个月中的位置

DAYNAME() 返回日期对应工作日的英文名

HOUR() 返回时间的小时部分

MINUTE() 返回时间的分钟部分

SECOND() 返回时间的秒部分

DATEOFWEEK() 对于日期,返回对应的星期几

DATEDIFF() 计算两个日期之差

NOW()、CURRENT_TIMESTAMP()、LOCALTIME()、SYSDATE() 返回当前日期和时间

条件判断函数

IF(expr, v1, v2) 如果expr表达式为True则返回v1,如果为False则返回v2

示例:

SELECT IF(1<2,'yes','no');

IFNULL(v1,v2) 如果v1不为null,返回v1,如果为null,返回v2

示例:

SELECT IFNULL(NULL,2);

CASE expr WHEN v1 THEN r1 [WHEN v2 THEN r2] [ELSE rn] END

如果expr等于某个vn,则返回对应位置THEN后面的结果,如果所有值都不想等,则返回ELSE的rn

示例:

SELECT product_name,

CASE WHEN product_type = ' 衣服 '

THEN 'A : '  | | product_type

WHEN product_type = ' 办公用品 '

THEN 'B : '  | | product_type

WHEN product_type = ' 厨房用具 '

THEN 'C : '  | | product_type

ELSE NULL

END AS abc_product_type

FROM Product;

 

系统信息函数

VERSION() 返回当前MYSQL版本号

CONNECTION_ID() 查看当前用户的连接数

SELECT USER() 获取当前登录用户名称

 

 

 

 

 

 

 

 

你可能感兴趣的:(MySQL)