截取字符串
从左开始截取字符串
left(str, length)
说明:left(被截取字段,截取长度)
例:select left(content,200) as abstract from my_content_t
从右开始截取字符串
right(str, length)
说明:right(被截取字段,截取长度)
例:select right(content,200) as abstract from my_content_t
截取特定长度的字符串
- substring(str, pos),即:substring(被截取字符串, 从第几位开始截取)
- substring(str, pos, length),即:substring(被截取字符串,从第几位开始截取,截取长度)
1.从字符串的第6个字符开始读取直至结束
SELECT SUBSTRING('www.csdn.net', 6)
结果为:sdn.net
2.从字符串的第6个字符开始,只取3个字符
SELECT SUBSTRING('www.csdn.net', 9, 3)
结果为:sdn
3.从字符串的倒数第6个字符开始读取直至结束
SELECT SUBSTRING('www.csdn.net', -6)
结果为:dn.net
4.从字符串的倒数第6个字符开始读取,只取2个字符
SELECT SUBSTRING('www.csdn.net', -6, 2)
结果为:dn
按关键字进行读取
substring_index(str, delim, count),即:substring_index(被截取字符串,关键字,关键字出现的次数)
1.截取第二个“.”之前的所有字符
SELECT SUBSTRING_INDEX('www.csdn.net', '.', 2);
结果为:www.csdn
2.截取倒数第二个“.”之后的所有字符
SELECT SUBSTRING_INDEX('www.csdn.net', '.', -2);
结果为:csdn.net
3.如果关键字不存在,则返回整个字符串
SELECT SUBSTRING_INDEX('www.csdn.net', 'sprite', 1);
结果为:www.csdn.net
– 取从左往右查 第一个’,'左边的字符串
select SUBSTRING_INDEX("123,456,789", ',', 1) as 号码;
– 结果 123
– 取从左往右查 第二个’,'左边的字符串
select SUBSTRING_INDEX("123,456,789", ',', 2) as 号码;
– 结果 123,456
– 取从右往左查 第一个’,'左边的字符串
select SUBSTRING_INDEX("123,456,789", ',', -1) as 号码;
– 结果 789
– 取从右往左查 第二个’,'左边的字符串
select SUBSTRING_INDEX("123,456,789", ',', -2) as 号码;
– 结果 456,789
解释:
"123,456,789"也可以为不加引号的字段名
',‘为要截取的标志符号,也可为/,或者某个字符
后面的数字表示’,'出现的第几次,截取内容为第几次出现前(正数)或者后(负数)的全部内容
转换日期
可以使用的格式
语法:
DATE_FORMAT(date,format)
date 参数是合法的日期。format 规定日期/时间的输出格式。
参考:
Java中的日期格式:
yyyy-MM-dd HH:mm:ss //2022-04-06 16:31:53
解释:
yyyy 年
MM 月
dd 日
HH 时
mm 分
ss 秒
date可以使用的格式如下:
格式 | 描述 |
---|---|
%a | 缩写星期名 |
%b | 缩写月名 |
%c | 月,数值 |
%D | 带有英文前缀的月中的天 |
%d | 月的天,数值(00-31) |
%e | 月的天,数值(0-31) |
%f | 微秒 |
%H | 小时 (00-23) |
%h | 小时 (01-12) |
%I | 小时 (01-12) |
%i | 分钟,数值(00-59) |
%j | 年的天 (001-366) |
%k | 小时 (0-23) |
%l | 小时 (1-12) |
%M | 月名 |
%m | 月,数值(00-12) |
%p | AM 或 PM |
%r | 时间,12-小时(hh:mm:ss AM 或 PM) |
%S | 秒(00-59) |
%s | 秒(00-59) |
%T | 时间, 24-小时 (hh:mm:ss) |
%U | 周 (00-53) 星期日是一周的第一天 |
%u | 周 (00-53) 星期一是一周的第一天 |
%V | 周 (01-53) 星期日是一周的第一天,与 %X 使用 |
%v | 周 (01-53) 星期一是一周的第一天,与 %x 使用 |
%W | 星期名 |
%w | 周的天 (0=星期日, 6=星期六) |
%X | 年,其中的星期日是周的第一天,4 位,与 %V 使用 |
%x | 年,其中的星期一是周的第一天,4 位,与 %v 使用 |
%Y | 年,4 位 |
%y | 年,2 位 |