0

我有一个 id 的数组,例如:

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

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

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

问题是我得到的数据是用我不知道的顺序给出的(例如 8467,2364,3214,1234...)。

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

提前致谢

4

2 回答 2

1

使用 order 子句,例如,

$oderFields = implode(",",$array);
SELECT....ORDER BY field(product_id, $oderFields);
于 2013-06-03T08:30:46.507 回答
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)
于 2013-06-03T08:31:00.470 回答