Добрый день! Подскажите, можно ли составить запрос к таблице (и если да то как). Допустим есть такая таблица: CarID Firm Model Color Year Price 1 Subaru Legacy Red 2003 300000 2 Subaru Legacy Red 2003 300000 3 Subaru Legacy Red 2003 300000 4 Nissan Sunny Blue 2000 190000 5 Nissan Sunny Blue 2000 190000 6 Nissan Sunny Blue 2000 190000 7 Nissan Sunny Blue 2005 220000 8 Toyouta Camry White 1998 170000 9 Toyouta Camry White 1998 170000 Необходимо составить к ней запрос, чтобы получился результат: CarID Firm Model Color Year Price 1 Subaru Legacy Red 2003 300000 4 Nissan Sunny Blue 2000 190000 7 Nissan Sunny Blue 2005 220000 8 Toyouta Camry White 1998 170000 т.е. записи с CarId 2,3,5,6,9 надо исключить из результата, так как ВСЕ параметры Firm Model Color Year Price у них совпадают. При этом параметр CarID может отличаться и результаты запроса он ДОЛЖЕН попасть. При этом не важно, какие две записи из трех 1,2,3 и какие две записи из трех 4,5,6 и какая ОДНА запись из двух 8,9 НЕ попадут в выборку, но хотя бы одна должна попасть (например, первая или последняя). Можно ли решить эту задачу? Возможно, можно как то использовать DISTINCT, но не пойму как
DELETE … WHERE CarId NOT IN( SELECT MIN(CarId) … GROUP BY …) http://ru.stackoverflow.com/a/425078/176610 если создашь песочницу на sqlfiddle, я напишу конкретный ответ
Сегодня что, магнитные бури? --- Добавлено --- Код (Text): select max(CarID) CarID, Firm, Model, Color, Year, Price from table group by Firm, Model, Color, Year, Price Так сойдёт?
@Chushkin, задача: --- Добавлено --- Честно скажу, в ход мыслей топикстартера я не вчитывался, т.к. привык наблюдать "Ошибку XY" ))) Возможно он и не собирался исправлять бардак, однако я рекомендую это сделать. А по ссылке найдется и добавление про уникальный ключ чтобы не допускать дублей в будущем.
Похоже, что решение, предложенное Chushkin вполне рабочее, спасибо. А мысль про "уникальный ключ" я не понимаю как мне поможет, потому как пример таблицы, которую я привел в первом посте, это результат подзапроса, а в оригинальной таблице и с ключами и с уникальными значениями все в порядке. Вот только как написать нужный мне запрос целиком я не придумал. Половину придумал: а вот со второй половиной помог Chushkin. Возможно, можно было бы написать запрос более правильно, но мне пока и так сойдет.
ну и слава богу! уточнять про "результат подзапроса" уже никто не хочет --- Добавлено --- это же прекрасно, когда у людей всё в порядке. или когда им так кажется.