大家好我想找到唯一的副本及其出现次数
Table 1
Id name Amount(in and out) Day
1 ram 100 Sunday
2 ram -100 Sunday
3 ram 100 Monday
4 ram -100 Monday
5 ram 100 Wednesday
6 ram 100 Wednesday
Ram在周日从公司获得100,即id = 1且金额= 100,同一天他将钱还给公司,即id = 2,金额= -100
similay for id = 3 and id = 4
但是id = 5和6是重复的,因为金额没有反转并且在同一天发生。
我想要显示
Count name Amount
2 ram 100
Count是重复值的出现次数。
我尝试了许多逻辑,但没有用。请帮助我。谢谢
注意:重复表示任何一天的两个连续正/负值。
答案 0 :(得分:0)
您可以尝试以下查询(假设表名为tbl):
逻辑:如果它被反转,那么在你的情况100和-100中将有一个正值和一个负值,因此它们的总和将为零,因此在我们忽略它们的条款中。 < / p>
select count(Id),name,amount from tbl group by name,day,amount having count(id)>1 and sum(amount)>0