You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用SQL查询表中firstname和lastname两列值相同的所有记录

SQL查询方案

1. 筛选所有存在姓名重复的记录

即查询所有firstname和lastname完全一致、出现过至少2次的全部条目,兼容不同数据库的写法如下:

  • 写法一(适配MySQL 8.0+、PostgreSQL、SQL Server等支持窗口函数的数据库)
SELECT firstname, lastname, age
FROM (
    SELECT 
        *,
        COUNT(*) OVER (PARTITION BY firstname, lastname) AS same_name_cnt
    FROM 你的实际表名
) tmp
WHERE same_name_cnt > 1;
  • 写法二(适配所有数据库版本,兼容性最好)
SELECT firstname, lastname, age
FROM 你的实际表名
WHERE (firstname, lastname) IN (
    SELECT firstname, lastname
    FROM 你的实际表名
    GROUP BY firstname, lastname
    HAVING COUNT(*) > 1
);

2. 查询特定姓名的所有记录

如果仅需要查询firstname为john、lastname为doe的所有条目,直接加查询条件即可:

SELECT firstname, lastname, age
FROM 你的实际表名
WHERE firstname = 'john' AND lastname = 'doe';

注:请将上述SQL中的你的实际表名替换为你自己的数据表名称

内容的提问来源于stack exchange,提问作者Can

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 17:36:02