我有一个像这样的简单mysql查询。 SELECT name,cat_id FROM table WHERE cat_id IN(67,65,66);
但是我遇到了以正确顺序恢复结果的问题。
[0] => Array
(
[cat_name] => name 1
[cat_id] => 65
)
[1] => Array
(
[cat_name] => name 2
[cat_id] => 66
)
[2] => Array
(
[cat_name] => name 3
[cat_id] => 67
)
我需要通过放入sql语句的cat_id对它们进行排序。
67,然后是65,然后是66。
但它总是希望按照65,66,67的顺序返回结果。
有人可以帮我解决这个问题吗?我宁愿以正确的顺序得到结果,而不是使用php来操作数组。
答案 0 :(得分:0)
SELECT
name,
cat_id
FROM table
WHERE cat_id IN (67)
order by cat_id asc;
UNION
SELECT
name,
cat_id
FROM table
WHERE cat_id IN (65,66)
order by cat_id asc;