`

Mysql select in 按id排序实现方法

 
阅读更多
有时候我们在后台选择了一系列的id,我们想安装填写id的顺序进行排序,那么就需要下面的order by方法,测试通过
 
<!--NEWSZW_HZH_BEGIN-->表结构如下:
mysql> select * from test;
+----+-------+
| id | name |
+----+-------+
| 1 | test1 |
| 2 | test2 |
| 3 | test3 |
| 4 | test4 |
| 5 | test5 |
+----+-------+

执行以下SQL:
mysql> select * from test where id in(3,1,5);
+----+-------+
| id | name |
+----+-------+
| 1 | test1 |
| 3 | test3 |
| 5 | test5 |
+----+-------+
3 rows in set (0.00 sec)

这个select在mysql中得结果会自动按照id升序排列,
但是我想执行"select * from test where id in(3,1,5);"的结果按照in中得条件排序,即:3,1,5,

想得到的结果如下:
id name
3 test3
1 test1
5 test5

请问在这样的SQL在Mysql中怎么写?
网上查到sqlserver中可以用order by charindex解决,但是没看到Mysql怎么解决??请高手帮忙,谢

谢!

select * from a order by substring_index('3,1,2',id,1);

试下这个good,ls正解。


order by find_in_set(id,'3,1,5')

谢谢,经测试order by substring_index和order by find_in_set都可以 <!--NEWSZW_HZH_END-->
分享到:
评论

相关推荐

    Mysql利用group by分组排序

    利用上面的特点,可以利用mysql实现一种独特的排序; 首先先按某个字段进行order by,然后把有顺序的表进行分组,这样每组的成员都是有顺序的,而mysql默认取得分组的第一行。从而得到每组的最值。 select id, (@...

    MySQL中select语句使用order按行排序

    本文介绍MySQL数据库中执行select查询语句,并对查询的结果使用order by 子句进行排序。 再来回顾一下SQL语句中的select语句的语法: Select 语句的基本语法: Select &lt;列的集合&gt; from &lt;表名&gt; where &lt;条件&gt;...

    MySQL 按指定字段自定义列表排序的实现

    大家都知道, MySQL 中按某字段升序排列的 SQL 为 (以 id 为例,下同): SELECT * FROM `MyTable` WHERE `id` IN (1, 7, 3, 5) ORDER BY `id` ASC 降序排列的 SQL 为: SELECT * FROM `MyTable` WHERE `id` IN (1...

    MySQL查询随机数据的4种方法和性能对比

    原因是因为MySQL会创建一张零时表来保存所有的结果集,然后给每个结果一个随机索引,然后再排序并返回。有几个方法可以让它快起来。基本思想就是先获取一个随机数,然后使用这个随机数来获取指定的行。由于所有的行...

    mysql的中文数据按拼音排序的2个方法

    客服那边需要我对一些酒店进行中文拼音排序,以前没有接触过,在php群里问了一些大牛。。得到了2种答案,都可以。...SELECT `hotel_id` , `hotel_name` , ELT( INTERVAL( CONV( HEX( left( CONVERT( `hotel_name`

    mysql指定某行或者某列的排序实现方法

    方法: 通过desc: 都无法实现: 方法一: select sp.productid,sp.productname,ss.sku from sp_product sp inner join sku_skus ss on sp.productid=ss.productid where sp.productname='\u529b\u58eb\u6052\u4...

    laravel 模型查询按照whereIn排序的示例

    //查询结果是想按照wherein的顺序排序 //正确写法 $data = Content::whereIn('id',$ids) -&gt;select('id') // -&gt;orderBy(\DB::raw('FIND_IN_SET(id, ' . implode(,, $ids) . '' . ))) // -&gt;orderBy(DB::raw(FIND_IN_...

    将MySQL查询结果按值排序的简要教程

    这是很多人都提过的问题,下面就教您如何对MySQL查询结果按某值排序,如果您感兴趣的话,不妨一看。 之前有一个功能修改,要求MySQL查询结果中: id name * * * 1 lucy ... 3 lucy ... 2 lily ... 4 lucy ... 名字...

    关于Select Where In 的排序问题

    FROM table1 Where (ID IN (3,5,1,4,2)) 代码如下:Select * FROM table1 Where (ID IN (3,5,1,4,2))如果In后面的条件都是数字,那MSSQL排序应该为 代码如下:Select * FROM table1 Where (ID IN ...

    MYSQL

    8 MySQL 教程 8.1 联接和断开服务器 8.2 输入查询 8.3 常用查询的例子 8.3.1 列的最大值 8.3.2 拥有某个列的最大值的行 8.3.3 列的最大值:按组:只有值 8.3.4 拥有某个字段的组间...

    mysql通过find_in_set()函数实现where in()顺序排序

    本文章来为各位介绍一篇关于mysql 实现按 where in () 中的顺序排序,用find_in_set() 函数的教程,希望此教程能够对各位有所帮助。 select * from table where id in ('783',' 769',' 814',' 1577',' 1769') ...

    MySQL中文参考手册.chm

    8 MySQL 教程 8.1 联接和断开服务器 8.2 输入查询 8.3 常用查询的例子 8.3.1 列的最大值 8.3.2 拥有某个列的最大值的行 8.3.3 列的最大值:按组:只有值 8.3.4 拥有某个字段的...

    Mysql中的find_in_set的使用方法介绍

    使用举例: 用户表(user)中的一个字段(purview)代表该用户的权限 将用户的所有权限id存入此字段。比如有:1,2,3,4,5这样的五... 您可能感兴趣的文章:mysql通过find_in_set()函数实现where in()顺序排序Mysql中FIND_IN_S

    mysql数据库的基本操作语法

    select id, name from temp; 删除视图: drop view view_temp; 显示创建语法: show create view v_temp; Ø DML语句 DML主要针对数据库表对象的数据而言的,一般DML完成: 插入新数据 修改已添加的数据 删除...

    MySQL关于字符串中数字排序的问题分析

    今天解决了一个关于MySQL字符串排序的很奇怪的问题,在数据里面定义的是varchar类型,实际存放的是Int类型的数据,按一下查询语句进行排序: 将字段*1或者+0可以将MySQL字符串字段按数值排序 如: select * from table ...

    MySQL中文参考手册

    + 5.4.2 SELECT INTO TABLE + 5.4.3 事务(Transactions) + 5.4.4 存储过程和触发器 + 5.4.5 外键(Foreign Keys) # 5.4.5.1 不使用外键的理由 + 5.4.6 视图(Views) + 5.4.7 '--'作为一个 注解的开始 o 5.5 ...

    MySql C# 自动生成语句

    自己用的工具,做.NET 项目用mysql 数据库 用此工具会节省很多时间,加快项目迭代。 工具描述: 1.输入数据库连接信息,可以保存最近10条连接。 2.读取数据库表名,点击表名列出列名 可以筛选where条件。排序字段...

    mysql SELECT语句去除某个字段的重复信息

    SELECT语句,去除某个字段的重复信息,例如: 表名:table id uid username message dateline 1 6 a 111 1284240714(时间戳) 2 6 a 222 1268840565 3 8 b 444 1266724527 4 9 c 555 1266723391 执行...

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

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

Global site tag (gtag.js) - Google Analytics