Как извлечь повторяющиеся заказы из БД

#sql #sql-server #tsql #aggregate-functions #having-clause

#sql #sql-сервер #tsql #агрегатные функции #наличие-предложение

Вопрос:

Использование SQL Server 2014. Берем следующий набор записей:

введите описание изображения здесь

Мне нужно найти способ извлечь ordOrderNum, который является дубликатами, с другим DeliveryNum. В этом примере заказы 93400460 и 93400467 будут извлечены, потому что они являются дубликатами. Заказ 93408170 в порядке. Как я могу это сделать ??!

спасибо за ваше время и помощь

Комментарии:

1. Пожалуйста, прочтите это для получения нескольких советов по улучшению вашего вопроса.

Ответ №1:

Вы можете использовать group by и having :

 select ordOrderNum 
from mytable
group by ordOrderNum
having min(ordDeliveryNum) <> max(ordDeliveryNum)
 

Ответ №2:

Попробуйте это:

 SELECT 
ORDORDERNUM, ORDLINENUM, 
COUNT(*) FROM TABLE
GROUP BY 
ORDORDERNUM, ORDLINENUM
Having count(*)>1
 

Комментарии:

1. спасибо за ответ, но он не работает. Он ничего не возвращает

2. Я думаю, вы имели в виду использовать ordDeliveryNum, а не ordLineNum. Внесение этого изменения вернет правильные результаты