Як вибрати всі дублікати таліці SQL запитом
як вибрати всі дублікати таліці SQL запитом?
що б не число дублікатів а дублікати всі виходили!
НЕ ІВАНОВ ІВАН ІВАНОВИЧ 2 а так ІВАНОВ ІВАН ІВАНОВИЧ ІВАНОВ ІВАН ІВАНОВИЧ Зробити
select aName, Count(aName) as Count з Table group by aName having count(aName)>1
SELECT T1.F, T1.I, T1.O FROM Table T1 GROUP BY T1.F, T1.I, T1.O HAVING COUNT(*)>1
Це не дасть результату, тут треба нагромаджувати з вкладеними запитами. Йому треба не по одному рядку, як у групування, а все, але тільки в тому випадку, якщо дублі. Мабуть погано спроектована таблиця, і тепер він намагається видалити зайве.
> Йому треба не по одному рядку, як у групування, а все, > але тільки якщо дублі.
Знімаю капелюх перед твоїм телепатором.
> КЩД (29.01.09 11:39) [6] Що саме він сказав ясно? Дублікати чого?
Він навів два приклади, чого він не хоче і навпаки.
Є таблиця припустимо 1.dbf
мені потрібні до неї запити щодо виявлення подвійних записів і ще дещо
Ось пробую по-різному і шукаю теж скрізь тільки один рядок виходить
припустимо ІВАНОВ ІВАН ІВАНОВИЧ і кількість наприклад 5
а мені на до щоб випестило
ІВАНОВ ІВАН ІВАНОВИЧ ІВАНОВ ІВАН ІВАНОВИЧ ІВАНОВ ІВАН ІВАНОВИЧ ІВАНОВ ІВАН ІВАНОВИЧ ІВАНОВ ІВАН ІВАНОВИЧ
> [9] Роман (29.01.09 12:14)
Я внесу свій внесок телепатування. Підозрюю, що в таблиці є й інші поля, які не повторюються. Якщо вони тобі потрібні і ти їх просто не написав у прикладі, наведені запити не спрацюють або спрацюють неправильно. Якщо інших полів немає, то топку таку таблицю.
> мені потрібні до неї запити щодо виявлення подвійнихзаписів
У [1] і [2] тобі відповіли. Якщо тебе це чимось не влаштовує, то в тебе вже є початковий інструментарій для подальшого нарощування запиту. Наприклад
Select * from Table where FIO in (див. запит [2])
І потім, як ти вирішуватимеш, хто з них реальний запис, а хто – дублікат (правда це вже твої проблеми).
> дублікати ПІБ (одне це поле або дещо тут не суть)
Суть і дуже суттєва. Тому що невідомо, що є первинним ключем. Тому що якщо PK не ось це ось саме ПІБ, то тоді це ніякі не дублікати, а цілком собі самостійні сутності.
> та його приклад ясно показав, що group by його не влаштовує
Ясно тільки одне, що він трохи подумати не хоче.
>>> У [1] та [2] тобі відповіли.
Ці відповіді я ще 2 дні тому
мені потрібно що б виконував інші завдання Якби знав то у МАЙСТЕРІВ Б НЕ ПИТАННЯ
> мені потрібно, щоб виконував інші завдання Якби знав то > у МАЙСТЕРІВ Б НЕ ПИТАННЯ
Ну ти у своєму праві.
> [14] Роман (29.01.09 13:14)
Ну то інші то поля в таблиці є? Вони ж повторюються?
≫Роман (29.01.09 13:14) [14] структуру таблиці оголить?
Повторювати поля F I O god
Інші не повторюються rt ft ko se rf guyu fft sss
> вибачте, а яка, власне, різниця "самостійна" > ця сутність, чи ні, якщо мені необхідно отримати дублікати > по полю (або кортежу)? :)
Є різниця. Яка з цих сутностей "головніша"? Яку залишатимемо, а яку - викидатимемо?
> людина просто не знає SQL
Судячи з того, що він пише, що знає про group by havingcount>1 .
А як ти це визначиш, не знаючи більше про цю таблицю.
З.И. Була справа, робив "Бюро перепусток". В базі було
15 000 народу. Повторень по ПІБ було ну не те щоб дофіга, але були. Але люди-то - різні!
Абсолютно немає ризниці які поля якщо Ви наведете приклад із вигаданими полями я і на цьому буду вдячний
Мій код SQL такий
select ,count(*) from table group by having count(*) > 1
Для мене він не підходить так як виводить один рядок, що повторюється, і суму скільки їх,
мені потрібно, щоб скільки були стільки і виходили
SQL вивчаю, але ще погано знаю
Select from table where in ( select from table group by having count(*) > 1)
Дякую всім пробуватиму