gpt4 book ai didi

sql - 如何在子查询中使用外部查询的列?

转载 作者:可可西里 更新时间:2023-11-01 08:23:05 25 4
gpt4 key购买 nike

我有一个包含库存记录的表格和另一个包含描述每个库存记录的文档的表格,例如:

inventory (t1)
t1id t1c1
1 desc1
2 desc2
3 desc3

documents (t2)
t2id t2c1 t1id
1 doc1 1
2 doc2 1
3 doc3 2
4 doc4 3

所以我尝试这个查询,但我收到一条错误消息,告诉我在子查询 =s 附近没有这样的列 (t1.t1id)

SELECT t1c1,(SELECT GROUP_CONCAT(t2c1) FROM t2 WHERE t1.t1id = t2.t1id) FROM t1

有什么想法吗?

最佳答案

这适用于 5.05.1:

CREATE TABLE t1 (t1id INT NOT NULL, t1c1 VARCHAR(20) NOT NULL);

CREATE TABLE t2 (t2id INT NOT NULL, t2c1 INT NOT NULL, t1id INT NOT NULL);

SELECT t1c1,
(
SELECT GROUP_CONCAT(t2c1)
FROM t2
WHERE t1.t1id = t2.t1id
)
FROM t1

您可以尝试将其重写为 JOIN:

SELECT  t1c1, GROUP_CONCAT(t2c1)
FROM t1
LEFT JOIN
t2
ON t2.t1id = t1.t1id
GROUP BY
t1.t1id

关于sql - 如何在子查询中使用外部查询的列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1532664/

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