SELECT LEAST(1,2,3) RES;-- 取参数中的最小值
SELECT GREATEST(1,2,3);-- 取参数中的最大值
SELECT 1=0 ,'2'=2,NULL=1,NULL=NULL ; -- 普通的等于,相等返回1,不相等返回0,如比较的任何一方存在null,则返回null
SELECT 1<=>0 ,'2'<=>2,NULL<=>1,NULL<=>NULL; -- 安全的等于,如比较的一方存在null,返回0,都为null则返回1
SELECT
'stud' LIKE 'stud',
'stud' LIKE 'stu_', -- 一个下划线代表一个字符
'stud' LIKE 'stud_',
'stud' LIKE 's%',-- 以s 开头的匹配
'stud' LIKE '%d'; -- 以d 结尾的匹配
SELECT 'yyc' REGEXP '^y', -- 匹配以y开头
'yyc' REGEXP 'c$', -- 匹配以c 结尾
'yyc' REGEXP '[ab]',-- 匹配包含 a 或者包含 b
'yyc' REGEXP '.yc';-- 匹配以yc结尾的
SELECT CONCAT('a','b','c') -- 结果为'abc';
SELECT CONCAT('a',null,'b','c') -- 结果为null; 其中任何一个值为null 则结果为null
SELECT CONCAT_WS('-','a','b','c') -- 结果为'a-b-c';用-进行拼接, 结果为a-b-c
SELECT CONCAT_WS('-','a',null,'b','c') -- 结果为'a-b-c';用-进行拼接,如包含null 则略过 结果为a-b-c
SELECT INSERT ('yyc',1,2,'ab');-- 从第1字符开始,替换2个长度的字符,替换为ab 结果为abc
SELECT INSERT ('yyy',1,2,'abc');-- 从第1字符开始,替换2个长度的字符,替换为ab,如果替换的值超长了,就直接补.结果为abcy
SELECT INSERT ('yyc',-1,2,'abc');-- 如果写-1 则不进行替换 结果还是yyc
SELECT LEFT('yyc',2);-- 从左边往后取2个字符,结果为yy
SELECT RIGHT('yyc',2);-- 从右边往前取2个字符,结果为yc
SELECT LPAD('yyc',5,"f"); -- 从左边填充f,直到整个字符的长度达到5,结果为ffyyc
SELECT RPAD('yyc',5,"f"); -- 从右边填充f,直到整个字符的长度达到5,结果为yycff
SELECT LTRIM(' yyc');-- 删除左边的所有空格 结果为yyc
SELECT RTRIM('yyc ');-- 删除左边的所有空格yyc
SELECT TRIM(' yyc ');-- 删除左边何后边的所有空格yyc
SELECT TRIM('y' from 'yycyycyyy'); -- 删除两端的y,中间保留,结果为cyyc
SELECT REPEAT('yyc',3);-- 重复生成指定数量的值, 结果为yycyycyyc
SELECT REPLACE('yyc','y','a');-- 用a替换 'yyc' 中的所有y,结果为aac;
SELECT STRCMP('yyc','yyc');-- 比较两个字符串,相同则返回0, 第一个小于第二个 返回-1,第一个大于第二个返回1
SELECT SUBSTRING('yangyongcui',5);-- 从第五个字符往后截取,结果为yongcui
SELECT SUBSTRING('yangyongcui',-5);-- 从后往前数五个字符,然后再往后截取所有,结果为ngcui
SELECT SUBSTRING('yangyongcui',5,4);-- 从第五个字符往后截取4个字符,结果为yong
SELECT SUBSTRING('yangyongcui',-5,4);-- 从后往前数五个字符,然后再往后截取4个字符,结果为ngcu
-- SUBSTRING 和 SUBSTR 结果一致
SELECT SUBSTR('yangyongcui',5);-- 从第五个字符往后截取,结果为yongcui
SELECT SUBSTR('yangyongcui',-5);-- 从后往前数五个字符,然后再往后截取所有,结果为ngcui
SELECT SUBSTR('yangyongcui',5,4);-- 从第五个字符往后截取4个字符,结果为yong
SELECT SUBSTR('yangyongcui',-5,4);-- 从后往前数五个字符,然后再往后截取4个字符,结果为ngcu
SELECT CURRENT_DATE(),CURDATE(),CURDATE()+0; -- 获取当前数据库日期 结果2021-01-17,2021-01-17,20210117;
SELECT CURRENT_TIMESTAMP(),LOCALTIME(),NOW(),SYSDATE(); -- 获取当前数据库日期和时间 结果都是 2021-01-17 18:47:01
SELECT MONTH('2021-01-17');-- 获取指定日期的 月份 结果是1;
SELECT MONTHNAME('2021-01-17')-- 获取指定日期的 月份的英文名 结果是January;
SELECT DAYNAME('2021-01-17');-- 获取指定日期的 天的英文名 结果是Sunday;
SELECT DAYOFWEEK('2021-01-17');-- 获取这一天在一周的第几天,星期天返回1,星期一返回2
SELECT WEEK('2021-01-17');-- 返回值范围是0-53 ,从周日算起,这是第三周的第一天,所以返回3
SELECT WEEKOFYEAR('2021-01-17');-- 获取当天是属于一年中的第几周,这个写法是周一算一周中的第一天,所以返回2
SELECT DAYOFYEAR('2020-12-30');-- 获取这一天是一年中的第几天,返回365;
SELECT DAYOFMONTH('2021-01-17');-- 获取这一天是这个月中的第几天,返回17;
SELECT DAYOFWEEk('2021-01-17');-- 获取这一天是这个周的第几天,周天是第一天,结果为1
SELECT DATE_FORMAT(NOW(),'%Y/%m/%d');-- 结果2021/01/19
SELECT DATE_FORMAT(NOW(),'%Y-%m-%d');-- 结果 2021-01-19 详细的格式,可以参考W3school的DATE_FORMAT函数的说明
SELECT VERSION();-- 获取系统版本
SELECT LAST_INSERT_ID();-- 执行完insert 之后,,立马执行这个函数,可以获取刚刚执行的这个表的自增id 的最大值
MySql 常用的函数
最新推荐文章于 2024-08-23 17:47:41 发布