2015-04-30 3 views
0

У меня есть оператор выбора, который находит дубликаты в моей таблицес помощью дублируют выберите прикрутить поле идентификатора

select Uf_UPC, count(Uf_UPC) as DupCount 
from item 
group by Uf_UPC 
Having (count(Uf_UPC)>1) 

Я хочу использовать колонку UF_UPC, чтобы связать назад к моей таблице элементов и тянуть номера элементов, которые соответствуют повторяющимся кодам UPC. Мне не повезло. Спасибо,

+0

Какую ошибку вы получаете? –

+0

Ну, дубликат выбора работает. Но я не могу понять, как использовать значения, которые он находит, а затем вводить номера позиций. Таким образом, в основном я хочу, чтобы это itemnum БЗК 123 х 234 у 345 х 456 г Я хочу только дубликат возвращается 123 х 345 х – DragonRider

ответ

0

Я думаю, что вы пытаетесь получить полные результаты из таблицы элементов, которые имеют дубликаты в SQL Server?

В этом случае вы должны сделать подзапрос с IN или Exists положение, например, как это:

SELECT * 
FROM item 
WHERE item.uf_upc IN (
SELECT Uf_UPC 
FROM item 
GROUP by Uf_UPC 
HAVING (COUNT(Uf_UPC)>1)) 
+0

, который сработал ... спасибо – DragonRider

+0

@DragonRider Нет проблем, вы должны рассмотреть возможность чтения по существу и в статьях: https://msdn.microsoft.com/en-us /library/ms177682.aspx и https://msdn.microsoft.com/en-us/library/ms188336.aspx – SLin

0

Вот один из способов сделать это:

SELECT ItemNumber 
FROM item 
WHERE Uf_UPC IN (
    select Uf_UPC 
    from item 
    group by Uf_UPC 
    Having (count(*)>1) 
) 
+0

Это сработало после того, как я закомментирована графа (UF_UPC), как dupcount. Я продолжал получать сообщение об ошибке «Только одно выражение может быть указано в списке выбора, когда подзапрос не вводится с EXISTS» – DragonRider

+0

Да, я отредактировал это, как только поймал его сам. –

+0

благодаря Tab и Slin ..., который отлично работал – DragonRider

Смежные вопросы