`

mysql 查询结果返回顺序和in语句参数顺序一致

 
阅读更多

 

有时候我们需要按照in条件里的id顺序输出结果,可sql语句在不加order by的时候是按照asc排序的,下边的sql解决按照in条件顺序的id输出查询结果

mysql写法:

eg1:

SELECT * FROM EVENT WHERE eventId IN(443,419,431,440,420,414,509)  ORDER BY INSTR(',443,419,431,440,420,414,509,',CONCAT(',',eventId,','))

eg2:

SELECT

SUBJECT_ID AS subjectId,

QUESTION_ID AS questionId,

WRONG_TIMES AS wrongTimes

FROM

T_EXAM_WRONG_COLLECT

WHERE

BROKER_ID = '7795205'

AND TYPE = '1'

AND QUESTION_ID IN (285,249,261,262,188,212,281,282,283,284)

ORDER BY INSTR(',285,249,261,262,188,212,281,282,283,284,',CONCAT(',',QUESTION_ID,','))

 

oracle写法:

select name from order where oderid in(111,222,333,444,555,666)order by instr('111,222,333,444,555,666',orderid)

 

sqlserver写法:

Select * From Product Where id in (1,1588,15782,9887,54)  Order By charindex(','+ id +',', ',1,1588,15782,9887,54,')

分享到:
评论

相关推荐

    MySQL DQL - 执行顺序.md

    通过阅读和实践这个文档,您将能够更好地理解MySQL数据库中DQL查询语句的执行顺序,从而更有效地编写查询语句并获取期望的查询结果。无论是初学者还是有经验的用户,都可以通过本文档来加深对MySQL DQL查询语句的...

    简单了解mysql语句书写和执行顺序

    mysql语句的书写顺序和执行顺序有很大差异。 书写顺序,mysql的一般书写顺写为: select <要返回的数据列> from <表名> <join> join on where group by <分组条件> having <分组后的筛选条件> ...

    详解 Mysql查询结果顺序按 in() 中ID 的顺序排列

    详解 Mysql查询结果顺序按 in() 中ID 的顺序排列 实例代码: <select id="queryGBStyleByIDs" resultMap="styleMap"> select style_num_id ,style_id,style_title,style_pic FROM gb_style where online = 1...

    sql和MySQL的语句执行顺序分析

    本文就sql和mysql的语句执行顺序问题向大家作了详细介绍,小编觉得挺不错的,这里分享下,供大家参考。

    MySQL数据库:查询结果的输出.pptx

    新表的行数据也来自SELECT语句的查询结果,其值可以是计算列表达式,也可以是函数。 【例】 使用CREATE TABLE语句创建一个新表,存放Book表中的图书编号和书名两列。 查询结果的输出 【例】 使用CREATE TABLE语句...

    mysql面试题,涉及MySQL基础、MySQL索引、MySQL语句 MySQL进阶等方面,适用于初、中级开发人员

    MySQL 中没有类似 Oracle 的 merge 语句,但是可以使用两种方法来实现类似的功能:INSERT INTO … ON DUPLICATE KEY UPDATE 和 REPLACE INTO。前者使用 INSERT 语句向表中插入记录,如果发现主键或唯一键冲突,则...

    基于MySQL数据库的查询性能优化研究.pdf

    本文主要介绍了 MySQL 数据库的查询执行过程,包括 SQL 语句的词法扫描、语法分析、语义检查、优化和执行等六个阶段,并分析了影响查询执行效率的客观因素。同时,本文还提出了几种实践可行的性能优化方法,能够保证...

    SQL语句执行深入讲解(MySQL架构总览-查询执行流程-SQL解析顺序)

    本文将从MySQL总体架构—>查询执行流程—>语句执行顺序来探讨一下其中的知识。 一、MySQL架构总览: 架构最好看图,再配上必要的说明文字。 下图根据参考书籍中一图为原本,再在其上添加上了自己的理解。   从...

    mysql的explain分析sql语句性能(慢查询和加没加索引)

    MySQL 的 Explain 分析 SQL 语句性能(慢查询和加没加索引) MySQL 的 Explain 分析 SQL 语句性能是数据库性能优化的重要工具之一。通过 Explain 命令可以分析 SQL 语句的执行计划,了解 SQL 语句的执行过程,找出...

    MySql基本查询、连接查询、子查询、正则表达查询讲解

    6、合并查询结果 7、为表和字段取别名 8、使用正则表达式查询 什么是查询? 怎么查的? 数据的准备如下: [sql] view plain copy create table STUDENT( STU_ID int primary KEY, STU_NAME char(10) not null, ...

    MySQL hint用法解析

    Hint可以基于表连接的顺序、表连接的方法、访问路径、并行度等规则对DML语句、或者查查询语句产生作用,通过它我们可以实现: 1) 使用的优化器的类型 2) 基于代价的优化器的优化目标,是all_rows还是first_rows。 3)...

    MySQL命令大全

    mysql> LOAD DATA LOCAL INFILE “D:/mysql.txt”INTO TABLE MYTABLE; 9:导入.sql文件命令(例如D:/mysql.sql) mysql>use database; mysql>source d:/mysql.sql; 10:删除表 mysql>drop TABLE MYTABLE; 11:...

    50道MySQL经典练习题

    这个是网上流传的50道SQL练习题,最近拿来...这里放上MySQL语法执行的先后顺序: 7:SELECT 查询列表 1:FROM 表 2:连接类型 JOIN 表2 3:ON 连接条件 4:WHERE 筛选条件 5:GROUP BY 分组 6:HAV

    mysql查询语句的简单使用

    本文章介绍了mysql的一些查询语句,对于判断方面的知识不在赘述 mysql有关查询的语句分别有 SELECT FROM (ON) WHERE GROUP BY HAVING ORDER BY (ASC|DESC) 一般来说执行顺序也是上面所写 下面将分别解释每个语句的...

    mysql自定义排序顺序语句

    mysql 自定义排序顺序 实例如:在sql语句中加入ORDER BY FIELD(status,3,4,0,2,1)语句可定义排序顺序 说明:status为排序字段,后面为该字段的相关值 您可能感兴趣的文章:SQL 按特定字段值排序SQL字符型字段按数字...

    MYSQL常用命令大全

    mysql> LOAD DATA LOCAL INFILE "D:/mysql.txt" INTO TABLE MYTABLE; 9:导入.sql文件命令(例如D:/mysql.sql) mysql>use database; mysql>source d:/mysql.sql; 10:删除表 mysql>drop TABLE MYTABLE; 11:清空表 ...

    0.4 MySQL表查询之条件查询

    MySQL表查询之条件查询 MySQL表查询之条件查询是 MySQL 中的一种重要查询方式,用于筛选和提取...条件查询可以使用关系表达式、逻辑表达式或模糊查询来筛选数据,并且可以使用 ORDER BY 语句来对查询结果进行排序。

    MySQL语句执行顺序和编写顺序实例解析

    select语句完整语法: SELECT DISTINCT <select_list> FROM <join> JOIN ON WHERE GROUP BY HAVING ORDER BY LIMIT 执行顺序: from →join →on →where →group by→having→select→order

    Mysql查询优化

    Mysql查询优化,查询优化器,子查询,分页查询1)在执行计划1中,哪张表是驱动表? 表的连接顺序是怎样的?每一步表的扫描类型是什么? 2)在执行计划2中,表的执行顺序是怎样的?每一步表的扫描类型是什么? 3)在...

Global site tag (gtag.js) - Google Analytics