|
|
|
| Здравствуйте,
Столкнулся с проблеммой вывода ненужных строк в результате, запрос вот такой:
SELECT c.id, c.price, c.public, c.markID, c.modelID, m.name as markName, md.name as modelName FROM 4x4_cars AS c LEFT JOIN 4x4_marks AS m, 4x4_models AS md ON c.modelID = md.id AND c.markID = m.id WHERE c.userID = '3'
================================
Результат вывода можно посмотреть здесь: http://img231.imageshack.us/img231/6153/sql6zq.gif
Нужно жестко привязать колличество выводимых строк к колличеству строк в 4x4_cars где 4x4_cars.userID = '3' .... как видо из результата строк в таблице cars всего 2, остальное просто повторение... никак немогу найти решения :) | |
|
|
|
|
|
|
|
для: namo
(16.05.2006 в 14:11)
| | необходимо сгруппировать данные по нужному вам полю, например
SELECT c.id, c.price, c.public, c.markID, c.modelID, m.name as markName, md.name as modelName
FROM 4x4_cars AS c LEFT JOIN 4x4_marks AS m, 4x4_models AS md
ON c.modelID = md.id AND c.markID = m.id
WHERE c.userID = '3'
GROUP BY markName
|
| |
|
|
|
|
|
|
|
для: namo
(16.05.2006 в 14:11)
| | Может быть просто нужно сделать соединение внутренним, т.е. убрать слово LEFT из запроса? | |
|
|
|
|
|
|
|
для: Trianon
(16.05.2006 в 16:03)
| | не имеет значения :) пробовал поразному, помог вот этот вариант :) GROUP BY c.id
спасибо за содействие )) | |
|
|
|