我有一张与此类似的表:
prompt
我需要将所有不同的公司作为单行,其中每个公司的 COMPANY | DESCRIPTION | CODE_A | CODE_B
-----------------------------------------------------
ABC | XYZ | 123 | 0
ABC | XYZ | 0 | 987
DEF | UVW | 0 | 654
GHI | RST | 0 | 321
GHI | RST | 456 | 0
和CODE_A
的最大价值,CODE_B
的值保持不变适用于所有公司。
结果表如下所示:
DESCRIPTION
答案 0 :(得分:0)
简单的max()和分组
select code, description, max(code_a), max(code_b)
from MyTable
group by code, description
答案 1 :(得分:0)
使用Window功能
SELECT DISTINCT COMPANY,
[description],
max(CODE_A) OVER(PARTITION by COMPANY,[description] Order by COMPANY) AS CODE_A,
max(CODE_B) OVER(PARTITION by COMPANY,[description] Order by description) AS CODE_B
from cte