检索包含特定列中相同字段的表

时间:2017-01-14 13:52:54

标签: mysql sql

我有一个包含此列的用户表:l_code,l_name,year_of_birth。 我需要返回一个表,其中包含具有相同出生年份的所有用户对(不同)。 新表将包含:user1,user2,year_of_birth。我如何用sql查询实现它?

1 个答案:

答案 0 :(得分:0)

自我加入会:

select t1.l_code, t1.l_name, t2.l_code, t2.l_name, t1.year_of_birth
from your_table t1
inner join your_table t2
on t1.year_of_birth = t2.year_of_birth
and t1.l_code <> t2.l_code;

您可能希望保留l_code列,因为可能存在许多具有相同名称的用户。

注意:它不会产生那些没有任何其他用户同一年份的用户,但是你可以通过外连接来实现这一点。