|
|
|
| доброй ночи
есть запрос:
SELECT * FROM `table1`
LEFT JOIN `table2` ON table1.id = table2.id
ORDER BY `table1.field` DESC
LIMIT 0 , 20;
|
если записи первой таблицы соответствует несколько записей из второй, то выводятся они все. как сделать чтобы выводилось не более одной соответствующей записи в итоговую выборку из второй таблицы?
спасибо | |
|
|
|
|
|
|
|
для: psychomc
(08.01.2010 в 05:36)
| | придется ответить на вопрос "какую именно из записей хочется выбрать?"
Неоднозначные задачи SQL-инструмент решать не обязан. | |
|
|
|
|
|
|
|
для: Trianon
(08.01.2010 в 09:44)
| | попытаюсь ответить, хотя не уверен (ужасно хочу спать, а группировку очень давно не делал и точно не помню):
SELECT * FROM `table1`
LEFT JOIN `table2` ON table1.id = table2.id
GROUP BY table1.id
ORDER BY `table1.field` DESC
LIMIT 0 , 20; | |
|
|
|
|
|
|
|
для: kosta_in_net
(08.01.2010 в 11:05)
| | спасибо, вроде то что надо | |
|
|
|
|
|
|
|
для: Trianon
(08.01.2010 в 09:44)
| | первую соответствующую из второй таблицы (но её может и не быть, тогда ничего). главное чтобы сортировка по первой таблице осталась | |
|
|
|