【发布时间】:2020-06-25 01:43:58
【问题描述】:
场景如下:
以前销售的产品名为“A”和B。
现在这个产品已经合并改名为'C'
比如说:
CompanyName ProductName PurchaseDate ExpiredDate
CompanyA A 2016 2017
CompanyA B 2017 2018
CompanyA c 2020 2021
同一家公司超时带来产品,后面的年份是特定产品的购买日期和过期日期
但是,现在产品A 和B 不再销售,它们合并为产品“C”。因此,对于报告显示,新产品将始终显示,在本例中为C。
我尝试如下查询
SELECT * FROM Product CASE WHEN ProductName IN ('A' and 'B') THEN 'C' ELSE ProductName END ProductName
但是,执行上述操作后,A和B的过去记录已经变为C,会出现重复结果如下:
CompanyName ProductName PurchaseDate ExpiredDate
CompanyA C 2016 2017
CompanyA C 2017 2018
CompanyA c 2020 2021
所以我在想,这是合并这些行的一种方式吗?结果可能是这样的
CompanyA C 2016 2021
如果我没记错的话,执行合并后,我必须处理MIN和MAX
【问题讨论】:
标签: sql sql-server tsql