在这种情况下,我有两张桌子连在一起
表格为:dpr
和set1
我有这段代码:
SELECT distinct s.s1T, s.s1W, s.s1L, s.s1Reject, s.s1Quantity, s.s1Volume
FROM set1 s left join dpr d ON s.DPno = d.ProdNo
Where s.DPno = '20150205'
AND s.s1T = d.Thickness
AND s.s1W = d.Width
AND s.s1L = d.Length;
这是我的Cyrstal报告中此查询的结果
示例:我只想在set1
中显示数量和体积Quantity Volume
----------------------
23 54
0 0
23 54
0 0
在这种情况下,我的记录是重复的..我该如何解决这个问题?
我尝试使用此代码来抑制重复" {set2.Quantity})= previous({set2.Quantity})"但它没有用!
我只期待这个结果:
Quantity Volume
----------------------
23 54
0 0
答案 0 :(得分:0)
通常,您可以使用具有排名功能的CTE
;WITH C AS(
SELECT RANK() OVER (PARTITION BY Quantity, Volume ORDER BY Quantity, Volume) AS Rnk
,Quantity
,Volume
FROM yourTable -- Put your joins here
)
SELECT Quantity, Volume FROM C WHERE Rnk = 1
根据重复值,您PARTITION BY
和ORDER BY
的字段正在更改
有关here
的更多信息