MySQL常用的内置函数

记录一些MySQL常用的内置函数(会不定期更新),具体使用如下:

-- 字符串拼接函数
-- SELECT CONCAT(str1,str2,...);
SELECT CONCAT('Hello',' ','world',' !');
-- Hello world !


-- 字符串重复(复制)函数
-- SELECT REPEAT(str,count);
SELECT REPEAT('Hello',2);
-- HelloHello

-- 字符串替换函数
-- SELECT REPLACE(str,from_str,to_str);
SELECT REPLACE('Hello world !','Hello','666');
-- 666 world !
-- 嵌套
SELECT REPLACE(REPLACE('Hello world !','Hello','666'),'666','777');
-- 777 world !

-- 时间函数
-- SELECT NOW();
SELECT NOW();
-- 2025-02-26 17:18:00
SELECT CURRENT_TIMESTAMP();
-- 2025-02-26 17:17:40
SELECT CURRENT_DATE();
-- 2025-02-26
SELECT CURRENT_TIME();
-- 17:17:23


-- 日期格式化函数,注意格式化中的大小写
-- https://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html#function_date-format
-- SELECT DATE_FORMAT(date,format);
SELECT NOW(),DATE_FORMAT(now(),'%Y-%m-%d %H:%i:%s');
-- 2025-02-26 17:23:20	2025-02-26 17:23:20

-- 时间相加、相减函数
-- SELECT DATE_ADD(date,INTERVAL expr unit);
-- SELECT DATE_SUB(date,INTERVAL expr unit);
SELECT NOW(),DATE_ADD(NOW(),INTERVAL 1 day);
-- 2025-02-26 17:26:28	2025-02-27 17:26:28
SELECT NOW(),DATE_ADD(NOW(),INTERVAL -1 day);
-- 2025-02-26 17:26:34	2025-02-25 17:26:34
SELECT NOW(),DATE_SUB(NOW(),INTERVAL 1 day);
-- 2025-02-26 17:27:22	2025-02-25 17:27:22


-- IF 条件函数
-- SELECT IF(expr1,expr2,expr3);
SELECT IF(true,1,2);
-- 1
SELECT IF(FALSE,1,2);
-- 2

-- IFNULL 判空函数(只能支持2个参数,多个得嵌套)
-- SELECT IFNULL(expr1,expr2);
SELECT IFNULL('111','222');
-- 111
SELECT IFNULL(NULL,'222');
-- 222
SELECT IFNULL(NULL,NULL);
-- NULL
SELECT IFNULL(NULL,NULL,'222'); 
-- > 1582 - Incorrect parameter count in the call to native function 'IFNULL'

SELECT IFNULL(IFNULL(NULL,NULL),'222'); 
-- 222

-- 判空 函数(常用于设置默认值,支持多个参数)
-- SELECT COALESCE(value,...);
SELECT COALESCE('111','NULL');
-- 111
SELECT COALESCE(null,'NULL');
-- 'NULL' (文本)
SELECT COALESCE(null,0);
-- 0


-- 字母大写 函数
-- SELECT UPPER(str);
SELECT UPPER('hello');
-- HELLO
SELECT UPPER('HELLO');
-- HELLO

-- 字母小写 函数
-- SELECT LOWER(str);
SELECT LOWER('hello');
-- hello
SELECT LOWER('HELLO');
-- hello



-- 字节长度 函数
-- SELECT LENGTH(str);
SELECT LENGTH('hello');
-- 5
SELECT LENGTH('你好');
-- 6
SELECT LENGTH(1);
-- 1

-- 字符长度 函数
-- SELECT CHAR_LENGTH(str);
SELECT CHAR_LENGTH('hello');
-- 5
SELECT CHAR_LENGTH('你好');
-- 2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值