sql - 需要自助加入方面的帮助

标签 sql sql-server self-join

我有一个表XYZ:

ID   A       B       C
1    abc     ygh     NULL
2    fgfd    bjh     NULL
3    jhkj    fgd     cgbvc
1    NULL    NULL    yr
2    NULL    NULL    jg

我需要对上表进行自连接以仅获取匹配的 ID。我正在尝试使用以下查询:

Select T1.ID, T1.A, T1.B, T2.C
From XYZ T1
INNER JOIN XYZ T2
where T1.ID = T2.ID

但没有得到以下结果:

1   abc     ygh     yr
2   fgfd    bjh     jg

请指教。克里希纳

最佳答案

为什么要使用自加入

提示:'A' + NULL=NULL

select ID,max(A) A,max(B) B,max(C) C
from XYZ
where A+B+C is null
group by ID

<强> SQL FIDDLE

关于sql - 需要自助加入方面的帮助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19156195/

相关文章:

sql - 如何在 Golang 中将 *sql.Rows 转换为类型化的 JSON

sql - SQL 中的 REPLACE 和 Unicode 字符

mysql - 如何在初始三个月/年和最后三个月/年之间选择 MySQL 中的行?

sql - T-SQL : How to select rows based on the max date?

sql-server - Excel Ms 查询上手动输入的数据刷新后未对齐

MySQL 查询执行 SELF join 并执行聚合

mysql - 从单个表中选择每个公司一个用户

MySQL 在查询中使用计数来搜索多行的可用性

c# - 无法获取插入行的标识。触发器返回结果集并且服务器选项 'disallow results from triggers' 为真

sql - sql中的关键字真正表示什么