MySQL字符串常用函数使用方式

一:日期加减天数,Date比较

1:日期加减操作

select date_add(now(), interval 1 day); - 加1天
select date_add(now(), interval 1 hour); -加1小时
select date_add(now(), interval 1 minute); - 加1分钟
select date_add(now(), interval 1 second); -加1秒
select date_add(now(), interval 1 microsecond);-加1毫秒
select date_add(now(), interval 1 week);-加1周
select date_add(now(), interval 1 month);-加1月
select date_add(now(), interval 1 quarter);-加1季
select date_add(now(), interval 1 year);-加1年

#实际使用  5年前,5年后
UPDATE supplier SET create_time = DATE_ADD( create_time, INTERVAL -5 YEAR ) ; 
UPDATE supplier SET create_time = DATE_ADD( create_time, INTERVAL 5 YEAR ) ;

#日期比较    一天后的时间相等操作
select s.* from supplier s,bank b
where s.create_time = DATE_ADD(b.RecordDate, INTERVAL 1 DAY)

二:字符串截取操作

1、字符串拆分: SUBSTRING_INDEX(str, delim, count)

  1. 参数解说
参数名 解释
str 需要拆分的字符串
delim 分隔符,通过某字符进行拆分
count 当 count 为正数,取第 n 个分隔符之前的所有字符; 当 count 为负数,取倒数第 n 个分隔符之后的所有字符。

2. 举例 以“:”逗号为分隔符之前的所有字符。

select SUBSTRING_INDEX('刘晓宇:13187211622',':',1)        提取姓名
SELECT SUBSTRING_INDEX('刘晓宇:13187211622',':',-1)        提取手机号

#把名字抽出来放到联系人字段中
UPDATE supplier SET contact_name = SUBSTRING_INDEX( '刘晓宇:13187211622',':',1 ) ;
#把手机号码抽出来放到手机号字段中
UPDATE supplier SET mobile_phone = SUBSTRING_INDEX( '刘晓宇:13187211622',':',-1 ) ;

三:替换 REPLACE

参数名 解释
field_name 需要替换的字符串
string_to_find 目标字符
string_to_replace 替换字符串,当 string_to_find 找到后就用 string_to_replace 替换成新的 field_name 字符串。

1、实例 

#常用的数据库替换 标点符号
UPDATE market_info SET specifi=REPLACE( specifi, ' ; ', ';' ); 
UPDATE market_info SET specifi=REPLACE( specifi, ' ;', ';' ); 
#常用的数据库替换 文字
UPDATE market_info SET remark=REPLACE( remark, '简介:', '备注:' ); 

四:字符串长度:LENGTH( str )

1、参数解说

参数名 解释
str 需要计算长度的字符串

2、 举例 

(1)获取 ‘中华人民共和国万岁’ 字符串的长度

#中文和英文会发生很奇妙的结果,试试

SELECT LENGTH('中华人民共和国万岁') ;

SELECT LENGTH('we live in china') ;
发布了90 篇原创文章 · 获赞 79 · 访问量 63万+

猜你喜欢

转载自blog.csdn.net/yexiaomodemo/article/details/103719752