2013-10-24 5 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

Почему вы хотите это сделать? Тем не менее вы можете «UNION ALL» с тем же запросом, но в чем смысл этого? – Antoniossss

+0

Пожалуйста, покажите образцы данных и выведите их, а также рассуждения. Ваш вопрос не очень ясен. –

+0

@MarcusAdams Обновленный вопрос. – Xriuk

ответ

-1

Вы можете добиться этого с помощью UNION ключевого слова. Вы можете найти пример Here

+0

Почему downvoted ???? –

+0

Dunnow, но, может быть, потому, что я упомянул его как комментарий? – Antoniossss

+0

@Rohit Vyas, не работает для меня ... – Xriuk

4

Постобработать набор результатов, используя любой язык программирования, который вы используете для постпроцесса данных для презентации. Не позволяйте MySQL выполнять всю работу.

Один запрос не может дать точный результат, который вы желаете, потому что предложение ORDER BY всегда будет заказывать предметы с общим id рядом друг с другом.

+0

Почему? Мне сложно использовать php для постпроцессов данных, мне нужно MYSQL сделать это для меня – Xriuk

Смежные вопросы