MySql如何将查询的出来的字段进行转换
目录
- MySql将查询的出来的字段进行转换
- MySql将字符串转成数字
- 1.直接用加法
- 2.使用函数
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 ;
MySql将字符串转成数字
今天写sql语句时,相对字符串类型的数字进行排序,怎么做呢?
需要先转换成数字再进行排序
1.直接用加法
字符串+0
eg:
select * from orders order by (mark+0) desc
2.使用函数
CAST(value as 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
以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
Mysql将查询结果集转换为JSON数据的实例代码
Mysql将查询结果集转换为JSON数据 前言学生表学生成绩表查询单个学生各科成绩(转换为对象JSON串并用逗号拼接)将单个学生各科成绩转换为数组JSON串将数组串作为value并设置key两张表联合查询(最终SQL,每个学生各科成绩)最终结果 前言 我们经常会有这样一种需求,一对关联关系表,一对多的关系,使用一条sql语句查询两张表的所有记录,例:一张学生表,一张学生各科成绩表,我们想要用一条SQL查询出每个学生各科成绩: 学生表 CREATE TABLE IF NOT EXISTS `stu
-
MySQL 字符串转换为数字的方法小结
方法一:直接 加 0select '123' + 0 方法二:函数 convert语法:convert (value, type);type可以为: decimal 浮点数 signed 整数 unsigned 无符号整数 select convert('123',signed) 方法三:函数 cast语法:cast (value as type); type可以为: decimal 浮点数 signed 整数 unsigned 无符号整数 select cast('123' as signed
-
mysql 数据类型转换的实现
一.问题 有一张如下图所示的表,需要我们查出 result 值大于 reference_high值的数据 然后我们写了下面的SQL查询语句 SELECT i.result,i.reference_high FROM report_item i LEFT JOIN report r ON r.id=i.report_id WHERE r.org_id=54 AND r.report_status=1 AND r.add_date BETWEEN '2020-12-01' AND '2020-12-
-
Mysql 数字类型转换函数
1.将Int 转为varchar经常用 concat函数,比如concat(8,'0') 得到字符串 '80' 2.将varchar 转为Int 用 cast(a as signed) a为varchar类型的字符串 总结:类型转换和SQL Server一样,就是类型参数有点点不同 : CAST(xxx AS 类型) , CONVERT(xxx,类型) 可用的类型 二进制,同带binary前缀的效果 : BINARY 字符型,可带参数 : CHAR() 日期 : DATE 时间: TIME 日期
-
MySql如何将查询的出来的字段进行转换
目录 MySql将查询的出来的字段进行转换 MySql将字符串转成数字 1.直接用加法 2.使用函数 MySql将查询的出来的字段进行转换 使用mysql 查询出来的字段并不是前端想要的,可能需要一些转换,那么怎么办呢 我们可以使用case a when 条件 then ‘输出’end来解决 1表示渡口工作人员,2表示微信用户,那么我们查询之后想把1和2转化成相应的文字说明 select *, (case when ts.reciever like '%,%' then '全部人员' when
-
MySQL Union合并查询数据及表别名、字段别名用法分析
本文实例讲述了MySQL Union合并查询数据及表别名.字段别名用法.分享给大家供大家参考,具体如下: union关键字 SELECT s_id, f_name, f_price FROM fruits WHERE f_price < 9.0 UNION ALL SELECT s_id, f_name, f_price FROM fruits WHERE s_id IN(101,103); 为表取别名 SELECT * from orders AS o WHERE o.o_num = 3000
-
mysql查询的时候给字段赋默认值操作
需求 查询某个字段的时候需要给一个字段同样的值. 这个值你可以写死,也可以从数据库获取 1.写死值 SELECT mfr_id AS mfrId, mfr_name AS mfrName, IFNULL(NULL, 587694978080178176) AS suppId FROM mater_prod materProd 查询结果 2.从数据库获取值 SELECT mfr_id AS mfrId, mfr_name AS mfrName, IFNULL(NULL, mfr_id) AS su
-
详解MySQL like如何查询包含'%'的字段(ESCAPE用法)
在SQl like语句中,比如 SELECT * FROM user WHERE username LIKE '%luchi%' SELECT * FROM user WHERE username LIKE '_luchi_', % 作为通配符通配多个 _ 作为通配符通配一个 但当like 所要查询的字段中含有 % ,我们如何去查: 这个时候就需要指明 字段中的那个'%' 不作为通配符: 这里就需要用到 ESCAPE 转义 测试: 这里我们使用这张表 转义前: SELECT * FROM use
-
MySQL优化总结-查询总条数
1.COUNT(*)和COUNT(COL) COUNT(*)通常是对主键进行索引扫描,而COUNT(COL)就不一定了,另外前者是统计表中的所有符合的纪录总数,而后者是计算表中所有符合的COL的纪录数.还有有区别的. 优化总结,对于MyISAM表来说: 1.任何情况下SELECT COUNT(*) FROM tablename是最优选择: 2.尽量减少SELECT COUNT(*) FROMtablename WHERE COL = 'value' 这种查询: 3.杜绝SELECT COUNT(
-
MySQL中对查询结果排序和限定结果的返回数量的用法教程
MySQL Order By 查询结果排序 ORDER BY SQL 语法中 ORDER BY 关键字用于对查询结果进行排序. 排序分为升序(ASC)和降序(DESC)两种,当不使用 ORDER BY 指定排序方式时,默认为升序. 语法: SELECT column,- FROM tb_name ORDER BY column1,column2,- DESC(ASC) ORDER BY 后面必须列出排序的字段名,可以是多个字段. 对 user 表 uid 进行降序查询: SELECT uid,u
-
详解MySQL插入和查询数据的相关命令及语句使用
插入数据 MySQL 表中使用 INSERT INTO SQL语句来插入数据. 你可以通过 mysql> 命令提示窗口中向数据表中插入数据,或者通过PHP脚本来插入数据. 语法 以下为向MySQL数据表插入数据通用的 INSERT INTO SQL语法: INSERT INTO table_name ( field1, field2,...fieldN ) VALUES ( value1, value2,...valueN ); 如果数据是字符型,必须使用单引号或者双引号,如:"value
-
MySQL中表子查询与关联子查询的基础学习教程
MySQL 表子查询 表子查询是指子查询返回的结果集是 N 行 N 列的一个表数据. MySQL 表子查询实例 下面是用于例子的两张原始数据表: article 表: blog 表: SQL 如下: SELECT * FROM article WHERE (title,content,uid) IN (SELECT title,content,uid FROM blog) 查询返回结果如下所示: 该 SQL 的意义在于查找 article 表中指定的字段同时也存在于 blog 表中的所有的行(注
-
mySQL中in查询与exists查询的区别小结
一.关于exists查询 explain select * from vendor where EXISTS(select * from area where area_code = vendor_prov_code ) limit 10 以上是一个典型的exists查询的sql语句. 它的作用方式是这样的:每次从vendor表中查询出一条数据,然后将这条数据中的vendor_prov_code值传递到exists查询中进行执行,也就是进行子查询的执行. 如果子查询查到的数据就返回布尔值true
-
MySQL中列子查询与行子查询操作的学习教程
MySQL 列子查询及 IN.ANY.SOME 和 ALL 操作符的使用 MySQL 列子查询 列子查询是指子查询返回的结果集是 N 行一列,该结果通常来自对表的某个字段查询返回. 一个列子查询的例子如下: SELECT * FROM article WHERE uid IN(SELECT uid FROM user WHERE status=1) 列子查询中使用 IN.ANY.SOME 和 ALL 操作符 由于列子查询返回的结果集是 N 行一列,因此不能直接使用 = > < >= &l
随机推荐
- C#实现的简单整数四则运算计算器功能示例
- js代码实现点击按钮出现60秒倒计时
- Angular 中 select指令用法详解
- Vert-x-通过异步的方式使用JDBC连接SQL
- Asp.net配合easyui实现返回json数据实例
- PHP通过COM使用ADODB的简单例子
- PHP array_flip() 删除重复数组元素专用函数
- python抓取网页图片并放到指定文件夹
- VC++开发中完美解决头文件相互包含问题的方法解析
- Android三种方式实现ProgressBar自定义圆形进度条
- 基于javascript、ajax、memcache和PHP实现的简易在线聊天室
- React实践之Tree组件的使用方法
- iOS+PHP注册登录系统 PHP部分(上)
- Java微信公众平台开发(14) 微信web开发者工具使用
- 为什么Google Adsense广告单元点击价格会下降??
- Android开源堆叠滑动控件仿探探效果
- PHP脚本自动识别验证码查询汽车违章
- 基于Android扫描sd卡与系统文件的介绍
- Android实现客户端语音动弹界面实例代码
- spring cloud consul注册的服务报错critical的解决