需要过滤数据

时间:2019-07-03 07:17:26

标签: sql oracle

我有一个表ldgr,其中包含以下字段

Vchrno    date      debit  credit  amount
JV1    01-mar-19    BA11   0        100
JV1    01-mar-19     0      PE113   100
JV1    01-mar-19    BA33   0         300
JV1    01-mar-19    BA44    0      400

我想过滤特定时间段内以PE开头的dedit代码BA11和creditcode的所有合资企业。只有少数合资企业在信用方面具有该PE。请建议

2 个答案:

答案 0 :(得分:1)

一种简单的方法使用聚合:

SELECT Vchrno
FROM ldgr
WHERE date BETWEEN <date1> AND <date2>
GROUP BY Vchrno
HAVING
    COUNT(CASE WHEN debit = 'BA11' THEN 1 END) > 0 AND
    COUNT(CASE WHEN credit LIKE 'PE%' THEN 1 END) > 0;

答案 1 :(得分:0)

您可以在下面尝试-

   select * from tablename
    where debit='BA11' and credite like 'PE%'