-- 查询表中相同的数据示例
-- 假设我们有一个名为 `users` 的表,其中包含以下列:id, name, email
-- 1. 查询具有相同 email 的所有记录
SELECT email, COUNT(*)
FROM users
GROUP BY email
HAVING COUNT(*) > 1;
-- 解释:
-- 这条 SQL 语句用于查找在 `users` 表中具有重复 email 的记录。
-- GROUP BY 子句将结果按 email 分组,COUNT(*) 计算每个 email 出现的次数。
-- HAVING 子句筛选出出现次数大于 1 的 email。
-- 2. 查询具体的重复记录
SELECT u1.*
FROM users u1
JOIN (
SELECT email
FROM users
GROUP BY email
HAVING COUNT(*) > 1
) u2 ON u1.email = u2.email;
-- 解释:
-- 这条 SQL 语句不仅查找了重复的 email,还返回了具体的重复记录。
-- 内部子查询找到所有重复的 email,外部查询通过 JOIN 将这些 email 与原始表中的记录关联起来,返回完整的重复记录。
上一篇:mysql字符集
下一篇:mysql lag
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站