MySQL
查询,截取字符串
1、从 右开始截取
select id, right(截取字段,从第几位开始)from 表名
2、根据关键字分割
截取位置解释:
1:截取关键字从左往右第一次出现的位置
-1:截取关键字从右往左第一次出现的位置
select id, SUBSTRING_INDEX(截取字段,截取关键字,截取位置) from 表名
更新,将截取字符串赋值给某个字段
update 表名 set 字段= SUBSTRING_INDEX(截取字段,截取关键字,截取位置) where 更新条件
更新,将多个字符串拼接成一个,赋值给某个字段
拼接使用 CONCAT(字符串1,字符串2,字符串3…),其中字符串可以是固定的,也可是表中的某个字段
update
表名
set
字段= CONCAT(字符串1,字符串2,字符串3...)
where
条件
将带有小数点的数字且有零的数字转成去除无效零的字符串 0 + CAST(字段 AS CHAR)
select CONCAT(字符串1,0 + CAST(需要转换的字段 AS CHAR) , 字符串2) as c from 表名 where 条件
使用 case when 处理数据,将类型转成自己想要的效果
1、使用等于的条件查询
select
back_type,
case
when back_type = 1 then 'CC退料'
else '车间退回'
end as back_typeStr
from
表名
执行结果如下,会将 back_type = 1的数据转成 ‘CC退料’,其他的转成 ‘车间退回’
2、使用 IN 查询
如果有多个条件转换的都一样,也可以用 in 的关系
select
back_type,
case
when back_type in (1,2) then 'CC退料'
else '车间退回'
end as back_typeStr
from
表名
执行效果如下,会将 back_type 若存在于 1和2 中,会被转换成 CC退料,否则转成 ‘车间退回’