重複したデータを見つけるSQL
重複データを抽出するには、SQL 文の GROUP BY および HAVING 句を使用できます。
例えば、employeesという従業員情報を、従業員IDと氏名を含むテーブルがある場合、以下のようなSQL文を使って、重複した氏名を見つけることができます。
SELECT 姓名, COUNT(*) as 重复次数
FROM employees
GROUP BY 姓名
HAVING COUNT(*) > 1;
それは名前と、その名前が出現した回数を格納した結果セットを返します。
重複するすべてのデータ行を抽出するには、次のSQLステートメントを使用します。
SELECT *
FROM employees
WHERE (员工ID, 姓名) IN (
SELECT 员工ID, 姓名
FROM employees
GROUP BY 员工ID, 姓名
HAVING COUNT(*) > 1
);
これにより、重複するすべてのデータ行が返されます。
なお、この例のテーブル名と列名は、実際のものに合わせて修正してください。