Отображение одной строки только для строк с одинаковым order_id в MySQL - PullRequest
1 голос
/ 27 декабря 2011

В настоящее время у меня есть этот запрос:

SELECT refnumbers.order_id FROM orders INNER JOIN refnumbers ON (refnumbers.order_id = orders.ID)
WHERE refnumbers.refno LIKE '%MAGT-%'

Это возвращает 24 строки из номеров. Мне бы хотелось, чтобы он сгруппировался по (?), Поэтому он возвращает только одну строку, если есть 4 строки с одинаковым order_id.

Пример, который показывает это сейчас:

OrderID: 2
OrderID: 2
OrderID: 2
OrderID: 3
OrderID: 3

Я бы хотел вернуть это:

OrderID: 2
OrderID: 3

1 Ответ

2 голосов
/ 27 декабря 2011

Самый простой ответ: добавьте DISTINCT сразу после SELECT.

Обратите внимание, что это полезно только в том случае, если all , который вы хотите вернуть, является order_id. В противном случае (например, если вы хотите подсчитать количество подходящих refnumbers для order_id), было бы лучше добавить GROUP BY refnumbers.order_id в конец запроса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...