查找具有多个行且标志设置为Y的int_ids

时间:2018-03-07 19:45:34

标签: sql-server-2012

我有一个表可以为每个代码存储多个描述。但是,该表中有一个标志,用于指示哪些是主要描述或主要描述。在某些情况下,我们的代码有多个,此标志设置为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记录,有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

SELECT int_id FROM A
WHERE dsp_fg = 'Y'
GROUP BY int_id
HAVING count(1) > 1 

这并不完美,但它确定了我需要的东西。