2013-10-24 114 views
1

我有這樣的查詢:MYSQL選擇多次同一行

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 
+1

爲什麼你想這樣做?儘管如此,你可以用同樣的查詢來「聯合所有」,但是要做什麼呢? – Antoniossss

+0

請顯示樣本數據和輸出,以及推理。你的問題不是很清楚。 –

+0

@MarcusAdams更新了問題。 – Xriuk

回答

-1

您可以通過使用關鍵字UNION實現這一目標。 您可以找到示例Here

+0

爲什麼低估? –

+0

鄧諾是誰,但也許是因爲我提到它作爲評論? – Antoniossss

+0

@Rohit Vyas,不適合我... – Xriuk

4

使用您正在使用的任何編程語言對結果集進行後處理,以對數據進行後處理以進行展示。不要讓MySQL做所有的工作。

單個查詢無法產生您所需的確切結果,因爲ORDER BY子句將始終將具有共同的id的項目排在彼此的旁邊。

+0

爲什麼?我很難用php來後處理數據,我需要MYSQL來爲我做這件事 – Xriuk