mysql - 排序结果以匹配 WHERE IN 表达式中值的顺序

标签 mysql sql

有没有办法让 mysql 按照我在 WHERE 命令中询问的顺序从 Member 数据库返回结果?

SELECT * 
FROM Members 
WHERE MemberID = "6" 
OR MemberId="3" 
OR MemberID="5"

目前,无论我做什么,它都会返回按 MemberID ASC 排序的结果。我希望它在 6、3、5 之前返回,即按照我要求的顺序返回。

最佳答案

SELECT 
  * 
FROM 
  Members 
WHERE 
  MemberID IN ("6","3","5")
ORDER BY 
  FIELD(MemberID,"6","3","5");

关于mysql - 排序结果以匹配 WHERE IN 表达式中值的顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6666152/

相关文章:

mysql - 加入同一张 table

在 Java Swing 应用程序中关闭 Hibernate Session 时出现 java.lang.NoSuchMethodError

php - mysql 获取数组(LIKE%)

MySQL 使用 NOT IN 作为临时表

mysql - 多行转单行查询结果

mysql - 如何生成字符串 'a' 。 .'zzz' 然后保存到表中?

MySQL/MariaDB 在 PRIMARY KEY 上更新缓慢

php - 如何从 php 和 mysql 中的统计数据中获取玩家排名

php - 使用 pdo 和复选框更新多行

MySQL自动递增每个在其他列中输入的不同值?