sql-函数

函数:一段可以直接被另一段程序调用的程序或代码。

字符串函数

函数 功能
CONCAT(s1, s2, …, sn) 字符串拼接,将s1, s2, …, sn拼接成一个字符串
LOWER(str) 将字符串全部转为小写
UPPER(str) 将字符串全部转为大写
LPAD(str, n, pad) 左填充,用字符串pad对str的左边进行填充,达到n个字符串长度
RPAD(str, n, pad) 右填充,用字符串pad对str的右边进行填充,达到n个字符串长度
TRIM(str) 去掉字符串头部和尾部的空格
SUBSTRING(str, start, len) 返回从字符串str从start位置起的len个长度的字符串
REPLACE(column, source, replace) 替换字符串
--concat
SELECT CONCAT('hello','mysql');
--返回 hello mysql

--lower
select lower('Hello');
--返回 hello

-- upper
SELECT UPPER('Hello');
--返回 HELLO

--lpad 左填充
SELECT LPAD('01',5,'-');
--返回 ---01

--rpad 右填充
SELECT RPAD('01',5,'-');
--返回 01---

-- trim 去除空格
SELECT TRIM(' Hello World ');
--返回 Hello World

-- substring 切片(起始索引为1)
SELECT SUBSTRING('Hello World', 1, 5);
--返回 Hello

-- 员工工号统一为5位数,不足5位的全部在前面补0.
UPDATE emp
SET workno = LPAD(workno, 5, '0');

数值函数

函数 功能
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之间的天数

--date_add,当前时间推后70天
SELECT date_add (now(), INTERVAL 70 DAY);
--date_add,当前时间推后70月
SELECT date_add (now(), INTERVAL 70 MONTH);
--datediff
select datediff('2021-12-01','2021-10-01');--第一个日期减第二个日期

--查询所有员工的入职天数,并根据入职天数倒叙排序
SELECT name, DATEDIFF(CURDATE(), entrydate) AS entrydays 
FROM emp 
ORDER BY entrydays  DESC;

流程控制函数

常用函数:

函数 功能
IF(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的值等于val1,返回res1,… 否则返回default默认值 
select
    name,
    (case when age > 30 then '中年' else '青年' end)
from employee;
select
    name,
    (case workaddress when '北京市' then '一线城市' when '上海市' then '一线城市' else '二线城市' end) as '工作地址'
from employee;

相关推荐

  1. sql-函数

    2024-02-23 21:00:18       26 阅读
  2. SQL 函数

    2024-02-23 21:00:18       21 阅读
  3. SQL高级:窗口函数

    2024-02-23 21:00:18       41 阅读
  4. (四)SQL函数

    2024-02-23 21:00:18       33 阅读
  5. SQL中聚合函数

    2024-02-23 21:00:18       30 阅读
  6. SQL函数类型

    2024-02-23 21:00:18       37 阅读
  7. SQL常用函数

    2024-02-23 21:00:18       18 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-23 21:00:18       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-23 21:00:18       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-23 21:00:18       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-23 21:00:18       20 阅读

热门阅读

  1. Qt(C++)面试题 | 精选25项常问

    2024-02-23 21:00:18       31 阅读
  2. 引用类型详解

    2024-02-23 21:00:18       30 阅读
  3. WPF 控件禁用时,显示悬浮提示

    2024-02-23 21:00:18       25 阅读
  4. 《C++进阶--3.函数提高》

    2024-02-23 21:00:18       29 阅读
  5. C++之STL:unordered_map 容器

    2024-02-23 21:00:18       32 阅读
  6. LeetCode56.合并区间

    2024-02-23 21:00:18       27 阅读
  7. AutoSAR(基础入门篇)10.6-模式管理进阶

    2024-02-23 21:00:18       30 阅读