gpt4 book ai didi

sql - 将多行合并为一个

转载 作者:行者123 更新时间:2023-12-02 07:18:33 24 4
gpt4 key购买 nike

我的表里有这样的东西

COUNTRY SCOPE1   SCOPE2 SCOPE3  SCOPE4  SCOPE5
UK Y NULL NULL NULL NULL
UK NULL Y NULL NULL NULL
UK NULL NULL Y NULL NULL

我需要单行输出

COUNTRY SCOPE1  SCOPE2  SCOPE3  SCOPE4  SCOPE5
UK Y Y Y NULL NULL

有人可以在 MS SQL Server 2014 中帮助解决这个问题吗?

最佳答案

你可以尝试使用MAX函数。

CREATE TABLE T(
COUNTRY VARCHAR(50),
SCOPE1 VARCHAR(3),
SCOPE2 VARCHAR(3),
SCOPE3 VARCHAR(3),
SCOPE4 VARCHAR(3),
SCOPE5 VARCHAR(3)
);


INSERT INTO T VALUES ('UK','Y',NULL,NULL,NULL,NULL);
INSERT INTO T VALUES ('UK',NULL,'Y',NULL,NULL,NULL);
INSERT INTO T VALUES ('UK',NULL,NULL,'Y',NULL,NULL);

查询 1:

SELECT COUNTRY ,
MAX(SCOPE1) AS SCOPE1,
MAX(SCOPE2) AS SCOPE2,
MAX(SCOPE3) AS SCOPE3,
MAX(SCOPE4) AS SCOPE4,
MAX(SCOPE5) AS SCOPE5
FROM T
GROUP BY COUNTRY

Results :

| COUNTRY | SCOPE1 | SCOPE2 | SCOPE3 | SCOPE4 | SCOPE5 |
|---------|--------|--------|--------|--------|--------|
| UK | Y | Y | Y | (null) | (null) |

关于sql - 将多行合并为一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52053114/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com