[英]Retrieve a table that contain the same fields in a specific column
我有一个包含以下列的“用户”表:l_code,l_name,year_of_birth。 我需要返回一个表,其中包含出生年份相同的所有用户对(不同)。 新表将包含:user1,user2,year_of_birth。 如何使用sql查询实现该功能?
自我加入将做到:
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列,因为可能有许多同名用户。
注意:它不会产生那些没有其他用户的用户具有相同的year_of_birth,但是您可以摆弄外部联接来实现这一点。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.