Sql 数据存在和不存在

Sql 数据存在和不存在,sql,oracle,Sql,Oracle,我有两张桌子 表1 Claim_id Claim_Status -- Includes values of "PAID" and "DENIED" 表2-此表包含与表1相同的索赔,但包含行项目详细信息 Claim_id Line_number Status -- Includes values of "PAID" and "DENIED" 表1中的已支付状态索赔id可能有表2中状态为的行 一个特定的付费索赔可能有几行被拒绝 我需要提取所有行都处于“已支付”状态的索赔数量, 对于给定的索赔

我有两张桌子

表1

Claim_id
Claim_Status -- Includes values of "PAID" and "DENIED"
表2-此表包含与表1相同的索赔,但包含行项目详细信息

Claim_id 
Line_number 
Status -- Includes values of "PAID" and "DENIED"
表1中的已支付状态
索赔id
可能有表2中状态为
的行

一个特定的付费索赔可能有几行被拒绝

我需要提取所有行都处于“已支付”状态的索赔数量, 对于给定的
索赔id
,有些行“已支付”,有些行“被拒绝”的索赔数量

SELECT x.claim_id, x.claim_status, x.payer_id1
FROM HEADER_CLAIM_TABLE x
WHERE x.payer_id1 = 'company_Z' 
      AND x.claim_id in (SELECT a.CLAIM_ID,
                                a.LINE_NUMBER,
                                a.STATUS,
                                a.payer_id
                         FROM LINE_DETAIL_CLAIM_TABLE a
                         WHERE EXISTS (SELECT b.*
                                       FROM LINE_DETAIL_CLAIM_TABLE B
                                       WHERE b.status = 'DENIED')
                               AND a.claim_id = b.claim_id
                               AND a.line_number = b.line_number
                               AND a.payer_id = b.payer_id)
      AND x.claim_status = 'PAID'
我是新来的,所以请原谅,如果上面的问题是完全不正常的。请帮助获取此数据


谢谢。

这里有一些老式sql。试试这个

select claim_with_no_deny.cnt PAID_COUNT,  claim_with_deny.cnt    WITH_DENY_COUNT
from
(select count(*) cnt from HEADER_CLAIM_TABLE h where 
  exists (select 1 from LINE_DETAIL_CLAIM_TABLE D where h.claim_id=d.claim_id and d.status = 'DENIED') claim_with_deny,
(select count(*) cnt from HEADER_CLAIM_TABLE h where 
 not exists (select 1 from LINE_DETAIL_CLAIM_TABLE D where h.claim_id=d.claim_id and d.status = 'DENIED') claim_with_no_deny

很抱歉它是甲骨文。你为什么要为给定的索赔id这么做?也许对于给定的索赔id,您可以获得支付或拒绝的行数…我想找到#部分支付的索赔(例如,一些行已支付,一些行已拒绝)和#全额支付的索赔(所有行均处于“已支付”状态)