Найти дубликаты в Table Plus Join - PullRequest
1 голос
/ 03 сентября 2011

Я хочу найти дубликаты телефонов в TableC (пакет 82), но телефон хранится в TableD

Мне нужно сравнить tablec с самим собой при получении телефона из tabled

Любые идеи о том, какчтобы идти об этом приветствуются?

    SELECT *
    FROM   (SELECT d.phone,
                   d.id
            FROM   tablec c
                   JOIN tabled d
                     ON c.tableid = d.id
            WHERE  c.batch = 82) d
           JOIN (SELECT d.phone,
                        d.id
                 FROM   tablec c
                        JOIN tabled d
                          ON c.tableid = d.id
                 WHERE  c.batch = 82) c
             ON d.phone = c.phone

WHERE  d.id < c.id 

Ответы [ 2 ]

1 голос
/ 03 сентября 2011
SELECT d.phone, 
       MIN(d.id) MINID, MAX(d.id) MAXID , COUNT(*) COUNT
FROM   tablec c 
JOIN tabled d 
ON c.tableid = d.id 
WHERE  c.leadlistid = 81
GROUP BY d.phone
HAVING COUNT(*)> 1
0 голосов
/ 03 сентября 2011
SELECT
   d.phone,
   count(c.phone)
FROM
   tableD d
   LEFT JOIN tableC c
   ON d.id = c.tableID
/* not sure what you mean by batch 82 -- maybe this: (?)
WHERE
   c.batch = 82
*/
GROUP BY
   d.phone
HAVING
   count(c.phone) > 1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...