2014-11-19 2 views
0

Этот вопрос связан с моим предыдущим вопросом:найти частичные дубликаты строк в таблице SQL в базе данных IBM Netezza

error of finding distinct cobinations of muiltiple columns in IBM netezza SQL table

Теперь мне нужно найти некоторые частичных дублированных строки в таблице в SQL IBM netteza Aiginity workbench.

В таблице, как:

id1 id2 **id3 id4 id5 id6** id7 id8 id9 
NY 63689 eiof 394 9761 9318 2846 2319 215 
NY 63689 eiof 394 9761 9318 97614 648 645 
CT 39631 pfef 92169 9418 9167 164 3494 34 
CT 39631 pfef 92169 9418 9167 3649 7789 568 

id3 id4 id5 id6 are duplicated for id1 = NY and id2 = 63689 
id3 id4 id5 id6 are duplicated for id1 = CT and id2 = 39631 

Результат должен быть

id1 id2 value 
NY 63689 2 
CT 39631 2 

ОБНОВЛЕНИЕ: нужно только считать парциальное дублированный для id3 ID4 ID5 ID6 для каждого id1 и id2. Мне не нужны столбцы id7, id8, id9.

Я использовал SQL-запрос:

SELECT id1,  id2, 
    COUNT(*) AS value 
FROM 
(
    SELECT 
    id1, id2, id3, id4, id5, id6 
    FROM 
    myTable 
    GROUP BY 
    id1, id2, id3, id4, id5, id6 
) 
    AS uniques 
GROUP BY 
    id1, id2 

Но, я получил:

id1 id2 value 
    NY 63689 number of combinations of id7 id8 id9 
    CT 39631 number of combinations of id7 id8 id9 

Любая помощь будет оценена.

+0

Что вы ожидаете, если у вас также есть 2 строки "NY 63689 eiof 111 2222 333 2846 2319 215"? Я думаю, вам нужно немного больше разнообразия в ваших образцовых данных, чтобы понять, что вы хотите в результате. – ScottMcG

+0

@ScottMcG, см. Мое новое ОБНОВЛЕНИЕ. благодаря ! – user3601704

ответ

3

Следующий запрос производит нужный результат. Это то, что вы хотите сделать?

SELECT id1, id2, COUNT(*) AS value 
FROM myTable 
GROUP BY id1, id2; 

EDIT:

Если вы хотите полные дубликаты (всех столбцов), но только, чтобы показать первые два:

SELECT id1, id2, COUNT(*) as value 
FROM myTable 
GROUP BY id1, id2, id3, id4, id5, id6; 

Вы можете добавить having count(*) > 1, если вы хотите только примеры с дубликатами.

+0

Я обновил OP, и проблема может немного измениться. – user3601704

+1

Решение Gordon все еще работает. – ScottMcG

+0

@ Gordon linoff, второе решение получает результат всех столбцов, включая id7/8/9, в моем новом обновленном OP. это не то, что я хочу. – user3601704

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