如果我有一个像这样的查询:
SELECT * FROM table WHERE id IN (3,6,1,8,9);
Run Code Online (Sandbox Code Playgroud)
这个id数组是动态构建的,顺序对我很重要.
$my_array = array (3,6,1,8,9) ;
Run Code Online (Sandbox Code Playgroud)
如何按照元素在数组中出现的顺序对结果进行排序?
它可以在MYSQL查询中执行,或者我必须在通过php后订购它?
可能的重复:
mysql自定义排序
我有一个 ID 数组:
$ids = array(5, 1, 4, 2, 3);
Run Code Online (Sandbox Code Playgroud)
我提出一个查询:
SELECT * FROM Persons
WHERE id IN $ids
Run Code Online (Sandbox Code Playgroud)
我收到这个对象:
1, 2, 3, 4, 5
是否可以像数组一样对它进行排序?我想收到
5、1、4、2、3。
我也用PROPEL。也许使用 Symfony 中的 Propel ORM,这可能吗?
我不会粘贴整个查询.看起来像这样.
SELECT *, MONTH(date_created) as month
from table
GROUP BY month ORDER BY month='3', month asc
Run Code Online (Sandbox Code Playgroud)
由于是4月份,我今年要查询,我原本预计订单如下3,1,2,4.
相反,我得出1,2,4,3.
如何更改语句的ORDER BY部分,以按照选定月份的顺序排序结果,然后按顺序显示年份中的其余月份?