Mysql select in 按id排序完成辦法。本站提示廣大學習愛好者:(Mysql select in 按id排序完成辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是Mysql select in 按id排序完成辦法正文
表構造以下:
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都可以