1

如果我有一个 mysql 行 ID 的数组,如下所示:

$id_array = array(5,3,13,7,12);

如何告诉 mysql 在保留数组顺序的同时检索带有标题的 id。

即类似的东西:

$in = implode(',',$id_array);

$query = "SELECT `id`,`title` FROM table WHERE `id` IN($in) ORDER BY (order of $id_array)"
4

2 回答 2

5

我想你可能正在寻找功能FIELD

ORDER BY FIELD(field_name, implode(',',array(5,3,13,7,12)))

编辑

在你的情况下,它会像。

ORDER BY FIELD(id, $in)
于 2013-09-11T06:42:26.280 回答
0
$in = implode(',',$id_array);

$query = "SELECT id,title FROM table WHERE id IN($in) ORDER BY id ASC";
于 2013-09-11T06:42:17.460 回答