php - SQL-根据列表顺序对项目进行排序

标签 php mysql sql sql-order-by

我有这个问题:

SELECT Name FROM Table WHERE Id IN (414208,479516,4129769,414211,221171,3226290)

这将返回在该列表中具有 ID 的所有名称,按首次找到它们的顺序排列。例如:如果 ID 为 221171 的 Jax 是找到的第一个元素,那么它将是结果表的第一个元素。

有没有一种方法可以根据元素在该列表中的显示方式对元素进行排序。 IE。结果中列出的第一个名称的 ID 应为 414208,第二个元素的 ID 应为 479516...最后一个元素的 ID 应为 3226290。

最佳答案

试试这个:

SELECT 
   Id
FROM 
   Table
WHERE 
   Id IN (414208,479516,4129769,414211,221171,3226290)
ORDER BY 
   FIELD(Id, 414208,479516,4129769,414211,221171,3226290)

关于php - SQL-根据列表顺序对项目进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16169445/

相关文章:

php - 在测试我的算法的所有可能性时减少测试时间的策略

PHP MongoDB。检查嵌入文档是否包含整数

php - 调用事件的 wp_posts 行

java - Google SQL 无法在 Google App Engine 上运行

sql - 选择具有最大 JSON 键的对象

php - 如何在 PostgreSQL 9.1 中使用 pgFouine?

php - 管理日期和天数的最佳实践

mysql - ShoreTel MySQL 查询

sql - 这个 SELECT 语句有什么作用?

sql - 如何在执行 select 语句 where 子句中使用变量而不在列上出错?