我有一个简单的问题。 我必须加入多个查询,其中大部分都有 ad IN clausole。 不幸的是,MySQL 不允许在 UNION 中使用 ORDER BY(仅在所有联合之外),但我需要一个我无法通过外部 order by 获得的特定顺序。
问题是: 如果我有一个像
这样的 IN 子句foo in ('newyork','boston','atlanta')
我可以假设 MySql 的引擎将按 IN 位置对结果行进行排序(因此,首先是 foo = 'newyork' 然后是 'boston' 等的所有行......
谢谢。
最佳答案
没有。完全不是那样的。您需要明确添加 order by 子句。
如果您想根据集合中的位置对行进行排序,可以使用 field
函数。
order by field(foo,'newyork','boston','atlanta')
关于php - Mysql - 在 IN Clausole 中排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42133204/