我有一个表可以为每个代码存储多个描述。但是,该表中有一个标志,用于指示哪些是主要描述或主要描述。在某些情况下,我们的代码有多个,此标志设置为Y
,这是不正确的。
我无法使用SQL来获取该表中包含多个描述设置为Y
的所有行。
我已使用此SQL识别没有任何dsp_fg = 'Y'
的行
select *
from table A
where dsp_fg = 'N'
and not exists (select 1 FROM table where cod_int_id = A.cod_int_id AND dsp_fg = 'Y')
但我在编写SQL时遇到问题,导致我cod_int_id
有多个Y
记录,有人可以帮忙吗?
答案 0 :(得分:0)
SELECT int_id FROM A
WHERE dsp_fg = 'Y'
GROUP BY int_id
HAVING count(1) > 1
这并不完美,但它确定了我需要的东西。