Dtpark's blog 磨刀不误砍柴工,读完硕士再打工

基本函数的种类及使用 |MySQL 学习笔记(二)

2022-10-30

函数是一段可以被直接调用的程序或代码(内置在 MySQL 中)。

一、字符串函数

  • 常用函数及功能
函数 功能
CONCAT(S1, S2, …, Sn) 字符串拼接。将S1等拼接为一个字符串
LOWER(str) 将字符串转化为小写字母
UPPER(str) 将字符串中每个字符转化为大写字母
LPAD(str, n, pad) 左填充。将字符串 str 用 pad 在其左边填充至总长为 n
RPAD(str, n, pad) 右填充。
TRIM(str) 去掉字符串左右两端的空格
SUBSTRING(str, start, len) 返回从 start 起长度为 len 的子串
  • 用法(演示)
SELECT 函数

二、数值函数

  • 常见数值函数及其功能
函数 功能
CEIL(x) 向上取整
FLOOR(x) 向下取整
MOD(x, y) 返回 x/y 的模
RAND() 返回 0-1 之间的随机数
ROUND(x, y) 求 x 的约数(四舍五入,保留 y 位小数)

三、日期函数

  • 常见的日期函数
函数 功能
CURDATE() 返回当前日期
CURTIME() 返回当前时间
NOW() 返回当前日期和时间
YEAR(date) 获取指定 date 的年份
MONTH(date) 获取指定 date 的月份
DAY(date) 获取指定 date 的日期
DATE_ADD(date, INTERVAL expr type) 返回一个日期/时间值加上一个时间间隔 expr 后的时间值
DATEDIFF(date1, date2) 返回起始时间 date1 和 date2 之间的天数 (date1-date2)
  • 日期为 YY- MM- DD
  • 时间为 HH- MM- SS

四、流程(控制)函数

流程函数在 SQL 语句中实现条件筛选,从而提高语句的效率

函数 功能
IF(value, t, f) 如果 value 为真,返回t,否则返回 f
IFNULL(value1, value2) 如果 value 不为 NULL,返回 value1,否则返回 value2
CASE WHEN [val1] THEN [res1] … ELSE [defult] END 如果 val1 为真,返回 res1,… ,否则返回default 默认值
CASE [expr] WHEN [val1] THEN [res1] … ELSE [default] END 如果expr 的值等于 val1, 返回 res1,…,否则返回default默认值

Similar Posts

Comments