如何始终只显示 SQL 查询结果表中相同值的第一个值?

Posted

技术标签:

【中文标题】如何始终只显示 SQL 查询结果表中相同值的第一个值?【英文标题】:How to display always just the first value from the same values in a result table of an SQL query? 【发布时间】:2021-12-22 23:47:17 【问题描述】:

我有一个选择查询,它在一列中返回许多相同的有序值。

看起来像这样:

Id Type
1 A
2 A
3 A
4 B
5 B
6 C
7 C
8 C

但我喜欢这样显示:

Id Type
1 A
2
3
4 B
5
6 C
7
8

感谢您的建议!

【问题讨论】:

看看ROW_NUMBERCASE 表达式。祝你好运! 【参考方案1】:

你可以使用lag窗口函数

select t.id, 
    case when lag([type]) over(order by id)=[type] then '' else [type] end [Type]
from t

【讨论】:

太棒了!感谢您的快速帮助!

以上是关于如何始终只显示 SQL 查询结果表中相同值的第一个值?的主要内容,如果未能解决你的问题,请参考以下文章