我有一个简单的mysql查询。从cat_id(67,65,66)中的表中选择名称,cat_id;
但是我在以正确的顺序返回结果时遇到了问题。
[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 来操作数组。
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;