gpt4 book ai didi

SQL将数据插入临时表,拆分列

转载 作者:行者123 更新时间:2023-12-02 08:05:12 30 4
gpt4 key购买 nike

我正在尝试从表中获取数据并将信息拆分为临时表中的两列,但我遇到了一些麻烦。让我解释一下。

table : a    
+-------+-----------+-----------+
| ID | Type | Word |
+-------+-----------+-----------+
| 1 | Fr | Wee |
| 1 | Eng | Yes |
| 2 | Fr | Non |
| 2 | Eng | No |
| 3 | Fr | Bien |
| 3 | Eng | Good |
+-------+-----------+-----------+

我有上面的表格,我想将单词数据插入到临时表中,但我想将其拆分为法语单词和英语单词。我使用了以下内容。

CREATE TABLE #translation
(
French NVARCHAR(50),
English NVARCHAR(50)
)

INSERT INTO #translation (French)
SELECT Word FROM a
WHERE Type = 'Fr'

INSERT INTO #translation (English)
SELECT Word FROM a
WHERE Type = 'Eng'

这种工作但产生:

+-------+-----------+-----------+
| Row | French | English |
+-------+-----------+-----------+
| 1 | Wee | NULL |
| 2 | Non | NULL |
| 3 | Bien | NULL |
| 4 | NULL | Yes |
| 5 | NULL | No |
| 6 | NULL | Good |
+-------+-----------+-----------+

理想情况下,我希望它们并排放置。

有什么建议吗?

如果需要更多信息,请询问。

最佳答案

一种方法是条件聚合:

INSERT INTO #translation (French, English)
SELECT MAX(CASE WHEN Type = 'FR' THEN Word END),
MAX(CASE WHEN Type = 'EN' THEN Word END)
FROM a
GROUP BY id;

关于SQL将数据插入临时表,拆分列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52384727/

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