函数
- 函数:是指一段可以直接被另一段程序调用的程序或代码。
字符串函数
-
MySQL中内置了很多字符串函数,常用的几个如下:
函数 功能 CONCAT(S1,S2,…Sn) 字符串拼接,将S1,S2,…Sn拼接成一个字符串 LOWER(str) 将字符串str全部转为小写 UPPER(str) 将字符串str全部转为大写 LPAD(str,n,pad) 左填充,用字符串pad对str的左边进行填充,达到n个字符串长度 RPAD(str,n,pad) 右填充,用字符串pad对str的右边进行填充,达到n个字符串长度 TRIM(str) 去掉字符串头部和尾部的空格 SUBSTRING(str,start,len) 返回从字符串str从start位置起的len个长度的字符串
MySQL CONCAT() 函数用于将两个或多个字符串连接成一个字符串。
+ 例子
```SELECT CONCAT(first_name, ' ', last_name) AS 'Full Name' FROM employees;```
数值函数
-
常见的数值函数如下:
函数 功能 CEIL(x) 向上取整 FLOOR(x) 向下取整 MOD(x,y) 返回x/y的模 RAND() 返回0~1内的随机数 ROUND(x,y) 求参数x的四舍五入的值,保留y位小数 -
例子
SELECT CEIL(1.23);
日期函数
-
常见的日期函数如下:
函数 功能 CURDATE() 返回当前日期 CURTIME() 返回当前时间 NOW() 返回当前日期和时间 YEAR(date) 获取指定date的年份 MONTH(date) 获取指定date的月份 DAY(date) 获取指定date的日期 DATE_ADD(date, INTERVAL expr type) 返回一个日期/时间值加上一个时间间隔expr后的时间值 DATEDIFF(date1,date2) 返回起始时间date1和结束时间date2之间的天数
+ 例子
```
SELECT CURDATE();
-- 这将返回当前日期,格式为 'YYYY-MM-DD’。
-- 你也可以将 CURDATE() 与其他 MySQL 函数一起使用。例如,你可以使用 DATE_FORMAT() 函数来改变日期的格式:
SELECT DATE_FORMAT(CURDATE(), '%d/%m/%Y');
-- 这将返回当前日期,格式为 'DD/MM/YYYY’。
```
流程函数
-
流程函数也是很常用的一类函数,可以在SQL语句中实现条件筛选,从而提高语句的效率
函数 功能 lIF(value , t , f) 如果value为true,则返回t,否则返回f IFNULL(value1 , value2) 如果value1不为空,返回value1,否则返回value2 CASE WHEN [ val1 ] THEN [res1] …ELSE [ default ] END 如果val1为true,返回res1,…否则返回default默认值 CASE [ expr ] WHEN [ val1 ] THEN [res1] …ELSE [ default ] END 如果expr的值等于vall,返回res1,…否则返回default默认值 -
例子
SELECT name, IF(price > 1.00, 'Expensive', 'Cheap') AS 'Price Category' FROM products;