MySQL开发知识:MySql如何将查询的出来的字段进行转换
MySql将查询的出来的字段进行转换
使用mysql 查询出来的字段并不是前端想要的,可能需要一些转换,那么怎么办呢
我们可以使用case a when 条件 then ‘输出’end来解决
1表示渡口工作人员,2表示微信用户,那么我们查询之后想把1和2转化成相应的文字说明
select *,
(case when ts.reciever like ‘%,%’ then ‘全部人员’
when find_in_set(‘1’, ts.reciever) then ‘渡口工作人员’
when find_in_set(‘2’, ts.reciever) then ‘微信用户’ end) as recieverName
from t_task_sms ts ;
(case when ts.reciever like ‘%,%’ then ‘全部人员’
when find_in_set(‘1’, ts.reciever) then ‘渡口工作人员’
when find_in_set(‘2’, ts.reciever) then ‘微信用户’ end) as recieverName
from t_task_sms ts ;
MySql将字符串转成数字
今天写sql语句时,相对字符串类型的数字进行排序,怎么做呢?
需要先转换成数字再进行排序
1.直接用加法
字符串+0
eg:
select * from orders order by (mark+0) desc
2.使用函数
CAST(value as type);
CONVERT(value, type);
CONVERT(value, type);
注:
这里的type可以为:
- 浮点数:
DECIMAL
- 整数:
SIGNED
- 无符号整数:
UNSIGNED
eg:
select * from orders order by CONVERT(mark,SIGNED) desc
select * from orders order by CAST(mark as SIGNED) desc
select * from orders order by CAST(mark as SIGNED) desc
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。