根据数组在订单后订购数据

时间:2013-06-03 08:26:25

标签: php mysql

我有一个带有ID的数组:

$array = array('1234','3214','8764','8467'2364','1113')

我要检索项数据的方法是使用IN语句,如:

...product_id IN ('.$array .')...

问题是我得到的数据是一个我不知道的订单(例如8467,2364,3214,1234 ......)。

有没有办法按照数组中提供的顺序从mysql获取数据?

提前致谢

2 个答案:

答案 0 :(得分:1)

使用订单子句,如

$oderFields = implode(",",$array);
SELECT....ORDER BY field(product_id, $oderFields);

答案 1 :(得分:0)

我认为您只需对数组使用implode函数,这样您就可以在查询中使用字符串

$array = array('1234','3214','8764','8467','2364','1113');
$string = implode(",", $array);
echo $string;

这将输出

1234,3214,8764,8467,2364,1113

现在您可以在查询中使用此字符串

product_id IN ('.$string.')

将是

product_id IN (1234,3214,8764,8467,2364,1113)