情景如下:
产品名为“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
2条答案
按热度按时间7kqas0il1#
可以将聚合与
case
表达式:kxxlusnw2#
对戈登·林诺夫的建议做了一些修改。