突出显示/强调查询的重复记录的最简单方法是什么?

时间:2016-03-23 13:51:55

标签: sql sql-server count reportbuilder3.0

我有一个返回大量列的查询,但是对于一个特定列(lp_num =托盘标识符),存在重复值。它完全没问题,因为同一记录中的另外两个字段具有不同的值。总结:

查询

t.lp_num     t.lot     t.qty
A            lot_1     -141
A            lot_2     -94
B            lot_1     -235
C            lot_1     -235

在报告中,我需要显示t.lp_num = A有2行而不是标准的1行。起初我尝试在文本框颜色的表达式中使用某种条件格式,但我找不到与MS Access允许的结果集中的其他记录进行比较的方法。然后我尝试在结果集中创建一个新列,通过执行t.lp_numCOUNT(t.lp_num)来指定基于COUNT(DISTINCT t.lp_num)字段的行是否唯一,但两种方法都返回1。我希望它会为t.lp_num = A的记录返回2,以表明此记录的重复值为t.lp_num值。

1 个答案:

答案 0 :(得分:4)

我认为您可以使用窗口函数获取所需信息:

select lp_num, lot, qty, count(*) over (partition by lp_num) as Num_lpnum
from t;

对于您的数据Num_lpnum,对于" A"行和1表示其他行。