大家好,如果有人能通过我的方式提供任何帮助,我将不胜感激。
我有一个数据集,如下所示作为简单示例
Date Description
1/1/24 Testing
1/1/24 Testing
1/2/24 Apple
1/2/24 Apple
我需要在 SQL 中做的是最终结果如下所示。简而言之,我只需要每个日期第一行的描述。
Date Description
1/1/24 Testing
1/1/24
1/2/24 Apple
1/2/24
谢谢保罗
我试图仔细考虑是否可以使用 case 语句,但这确实不能解决我的问题,因为我可以根据 a 列中的内容更改 b 列,但我不知道在什么情况下要在 case 中放入什么声明地址,使任何次要的相同或更多日期为空白。
如果您可以使用 CTE,请勾选此项。
将@Data声明为表 (日期日期, 说明 nvarchar(50))
插入@Data(日期,描述) 值('1/1/24','测试')
插入@Data(日期,描述) 值('1/1/24','测试')
插入@Data(日期,描述) 值('1/2/24','苹果')
插入@Data(日期,描述) 值('1/2/24','苹果')
;WITH table_nameCTE AS
(
SELECT*, ROW_NUMBER() over (PARTITION BY Dates,Description ORDER BY Dates) 作为 RN
来自@Data
) 选择日期,当 RN=1 时则选择说明,否则 '' 结束为 table_nameCTE 的说明