<分区>
CREATE TABLE users (
id INT,
name TEXT
);
INSERT INTO users VALUES
(1, "John"),
(2, "Susan"),
(3, "Timothy"),
(4, "Robert"),
(5, "Jim"),
(6, "Patricia");
$var = $db->prepare("
SELECT name
FROM users
WHERE id IN (3, 2, 4, 6)
");
$var->execute();
这将按照 id
在表中出现的顺序返回一个结果,即“2, 3, 4, 6”。有没有办法按照 WHERE ... IN
子句中指定的顺序对其进行排序?
预期结果为:
+----+
| id |
+----+
| 3 |
| 2 |
| 4 |
| 6 |
+----+