问题描述
仅当missing ind
标志设置为1时,我才需要选择父记录或子记录。
这是示例数据。
父项或子项missing_ind都将设置为1,并且仅当子项或父项missing ind
标志设置为1时,我才想选择所有记录。
此查询确实返回所有3条记录,但我无法添加is_missing_ind = 1检查,因为它仅返回子记录。
select * from sc_connect connect1
where
exists( select * from sc_connect connect2 where connect1.connection_id = connect2.original_connection_id and connect1.type = connect2.original_type)
解决方法
WITH
summary AS
(
SELECT
s.*,SUM(is_missing_ind) OVER (PARTITION BY original_connection_id) AS group_is_missing_ind
FROM
sc_connect s
)
SELECT
*
FROM
summary
WHERE
group_is_missing_ind > 0