我不希望MySQL对找到的结果进行排序

时间:2012-03-29 04:31:48

标签: php mysql

目前,我正在从MySQL数据库表中检索一些数据,但问题是每次执行查询时,默认情况下,MySQL根据自动生成的id(字段名称[id])对结果进行排序。我不想被排序。就我而言:

$keys = array(4, 1, 7, 8, 2, 5, 6);
$strKeys = implode(',', $keys);
$result = mysql_query('SELECT * FROM tableName WHERE id in('.$strKeys.')');

我希望结果按$键的顺序排列:4,1,7,8,2,5,6 但实际上,结果按[id]的排序顺序排出:1,2,4,5,6,7,8

如何从$键获取结果并按顺序显示。

1 个答案:

答案 0 :(得分:9)

你可以试试这个。

SELECT * FROM tableName WHERE id in (4, 1, 7, 8, 2, 5, 6) order by find_in_set(id, '4, 1, 7, 8, 2, 5, 6');