我在医疗领域工作,我倾向于经常处理索赔数据。数据通常以行级详细信息显示。
CLAIM CLAIMLINE
12345 1
12345 2
12345 3
12345 1
12345 2
12345 3
参考上面的重复示例,我可以编写哪些最佳逻辑来帮助识别索赔何时被多次列出?因为有行级详细信息,所以您不能简单地执行HAVING COUNT> ' X'因为这些行总是导致索赔号重复导致固有的重复。我真的需要一种方法来分组索赔并根据小组进行计数。
非常感谢任何帮助。谢谢!
答案 0 :(得分:1)
如果您只想查找sess = tf.InteractiveSession()
和CLAIM
的唯一组合的计数,请添加CLAIMLINE
语句,其中包括您要分组的列,然后添加一个聚合,例如group by
位于不可为空的列上,或者只是一个给定的值,例如下面的count
:
1
答案 1 :(得分:0)
仅返回重复claim
的声明的claimline
号码:
select distinct claim
from claims c
group by claim, claimline
having count(*) > 1
rextester演示:http://rextester.com/FCIW49171
返回:
+-------+
| claim |
+-------+
| 12345 |
+-------+
来自示例数据:
create table claims (claim int, claimline int)
insert into claims values
(12345,1),(12345,2),(12345,3),(12345,1),(12345,2),(12345,3)
,(6789,1),(6789,2)
要返回具有重复行的声明的所有行/列:
select *
from claims c
inner join (
select distinct claim
from claims c
group by claim, claimline
having count(*) > 1
) dup
on c.claim = dup.claim
答案 2 :(得分:0)
您可以使用cte和row_number来获取如下内容:
;With DupeClaims as (
Select *, RowN = Row_Number() over (partition by claim, claimline order by claim) from yourClaims )
Select * from DupeClaims where RowN > 1
答案 3 :(得分:0)