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

Tha*_*ith 5 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.')');
Run Code Online (Sandbox Code Playgroud)

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

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

xda*_*001 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');
Run Code Online (Sandbox Code Playgroud)