我有一个存在查询的查询,它有PRCS_STE_CD列。查询
SELECT
PRCS_SNO
, YEAR
, SUBSC_CANC_YN
FROM
TB_POT_ECD_PRCS_INFO INF
WHERE
INF.SUBSC_CANC_YN = 'N'
AND EXISTS (
SELECT 'X'
FROM TB_POT_ECD_PRCS_HIST HIS
WHERE PRCS_STE_CD = 'R01'
)想法是只显示PRCS_STE_CD = 'R01‘。
但问题是,有些公司有“R01”和“R02”代表PRCS_STE_CD。
(在本例中,它同时具有R01和R02,我不想在列表上显示它)。
总之,我想展示一个只有R01 for PRCS_STE_CD的。
哦,PRCS_STE_CD 不能只有R02。它必须有R01才有R02。
同样,当它同时具有R01和R02时,不应该在列表中选择它。
有人能帮助编辑查询吗?
发布于 2013-12-24 04:32:52
在您的表中,您是如何为R02存储PRCS_STE_CD的。我假设您有一个不同的列来存储R02。如果是这样,那么您可以尝试使用IN和OR操作符。
SELECT
PRCS_SNO, YEAR, SUBSC_CANC_YN
FROM TB_POT_ECD_PRCS_INFO INF
WHERE INF.SUBSC_CANC_YN = 'N'
AND 'X' IN (
SELECT 'X'
FROM TB_POT_ECD_PRCS_HIST HIS
WHERE PRCS_STE_CD = 'R01' OR Second_Column= 'R02'
)https://stackoverflow.com/questions/20754228
复制相似问题