2016-07-29 3 views
0

Этот запрос работает на SQL Server Но в MySQL он не работает. Может ли кто-нибудь помочь?Выберите дубликаты записей в MySQL

SELECT name 
FROM table_name 
WHERE 
    Institution_Code = 1 and 
    Month= 6 and Year= 2016 and 
    Id IN (
      SELECT Id FROM table_name 
      where Institution_Code = 1 and 
       Month= 6 and Year= 2016 
      GROUP BY Id HAVING count(Id) > 1 
     ) 

ответ

0

Try, чтобы избежать зарезервированное слово в запросе:

SELECT name 
FROM table_name 
WHERE Institution_Code = 1 
and `Month`= 6 
and `Year`= 2016 
and Id IN (
    SELECT Id 
    FROM table_name 
    where Institution_Code = 1 
    and `Month`= 6 
    and `Year`= 2016 
    GROUP BY Id 
    HAVING count(Id) > 1) 
0

сделать это следующим образом:

SELECT name 
FROM table_name 
WHERE Institution_Code = 1 
and [Month]= 6 
and [Year]= 2016 
and Id IN (
    SELECT Id 
    FROM table_name 
    where Institution_Code = 1 
    and [Month]= 6 
    and [Year]= 2016 
    GROUP BY Id 
    HAVING count(Id) > 1) 

SQL зарезервированное слово должно быть приложить к этому кронштейну [зарезервированное слово здесь]

0

Вы можете попробовать это

SELECT * , count('name') is_duplicate 
FROM `tbl_name` 
GROUP BY `name` 
HAVING is_duplicate >1 
+0

не работает он показывает всю информацию, но я хочу только дублировать данные – Anup

+0

позвольте мне обновить мой ответ –

+0

SELECT *, граф ('имя') is_duplicate FROM 'tbl_name' GROUP BY' name' HAVING is_duplicate> 1 попытка это –