Mysql select in 按id排序实现方法

2023年 4月 22日 24.5k 0

表结构如下: 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); +----+

表结构如下: 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都可以

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论