1

我有这个查询:

SELECT id, header, title, price_obm, packs
FROM obm
WHERE id
IN (2, 12, 10, 2, 10)
ORDER BY FIELD(id, 2, 12, 10, 2, 10) 

现在,我需要多次输出相同的行(2、10),这些行可能会有所不同(可以是任何数字)。

我怎样才能做到这一点?

输出示例:

id | header | title | price_obm | packs
2  | head2  | tit2  | price2    | p2
12 | head12 | tit12 | price12   | p12
10 | head10 | tit10 | price10   | p10
2  | head2  | tit2  | price2    | p2
10 | head10 | tit10 | price10   | p10
4

2 回答 2

4

使用您用于对数据进行后处理以进行演示的任何编程语言对结果集进行后处理。不要让 MySQL 完成所有工作。

单个查询无法产生您想要的确切结果,因为 ORDER BY 子句将始终对具有共同点的项目进行排序id

于 2013-10-24T12:28:58.780 回答
0

您可以通过使用UNION关键字来实现此目的。您可以在此处找到示例

于 2013-10-24T12:27:32.100 回答