【发布时间】: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_NUMBER和CASE表达式。祝你好运!
标签: sql sql-server tsql select
我有一个选择查询,它在一列中返回许多相同的有序值。
看起来像这样:
| 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_NUMBER 和CASE 表达式。祝你好运!
标签: sql sql-server tsql select
你可以使用lag窗口函数,
select t.id,
case when lag([type]) over(order by id)=[type] then '' else [type] end [Type]
from t
【讨论】: