我只需要显示基于关键字段的Grandtotal的前1值,剩下的应该打印为null,
如下所示,对于单个文档,我不得仅显示一个总计,第二个应显示为NULL。
DOCUMENTNO TOTAL DELIVERYCHARGE GRANDTOTAL
BR17000079 59878.80 0.00 132639.52
BR17000079 59878.80 0.00 132639.52
如果有人有想法,请帮我解决这个问题。
谢谢,
答案 0 :(得分:2)
在SQL中,没有“第一”或“第二”行 - 除非列指定了排序。您显示的列都具有相同的值,因此没有“第一个”。
您可以将一个的值设置为NULL
:
select t.DOCUMENTNO, t.TOTAL, t.DELIVERYCHARGE
(case when row_number() over (partition by t.DOCUMENTNO order by t.DOCUMENTNO) = 1
then GRANDTOTAL
end) as GRANDTOTAL
from t;