У меня есть запрос с несколькими левыми внешними соединениями, для простоты я просто включу их. Это выглядит примерно так:Несколько внешних соединений возвращают верхний результат
SELECT Object.ID, Gloss.name, Gloss.order, Title.name from Object
LEFT OUTER JOIN Gloss on Gloss.object_id = Object.ID
LEFT OUTER JOIN Title on Title.object_id = Object.ID
Однако некоторые элементы имеют несколько Gloss, и я хочу вернуть только одну строку, либо с макс или мин Gloss.order. Пример вывод из моего запроса выглядит следующим образом:
|Object.ID | Gloss.name | Gloss.order | Title.name
|4.00 | glossvalue1| 1 | TitleValue
|4.00 | glossvalue2| 2 | TitleValue
|3.00 | gloss3-1 | 11 | OtherTitle
|3.00 | gloss3-2 | 13 | OtherTitle
|3.00 | gloss3-3 | 15 | OtherTitle
В идеале я хотел бы вернуть что-то вроде этого:
|Object.ID | Gloss.name | Gloss.order | Title.name
|4.00 | glossvalue1| 1 | TitleValue
|3.00 | gloss3-1 | 11 | OtherTitle
Я думаю, что мне нужна некоторые минимальные или вещи, но у меня возникли проблемы комбинируя это с другим внешним соединением (которое не требует max или min). Любая помощь приветствуется, дайте мне знать, если вам нужна дополнительная информация.
Сначала я получил «Имя столбца не было указано для столбца 2 ошибки« X », а затем было изменено« MIN »(порядок« до »MIN (порядок) ord' и' X.order' от SELECT до 'x.ord 'и я был в деле. Спасибо. – user2856332
Да, правильно! Я обновил свой ответ на основе этого. – Szymon