我有一个包含库存记录的表,另一个包含描述每个库存记录的文档的表,例如:
inventory (t1)t1ID t1c11 desc12 desc23 desc3documents (t2)t2ID t2c1 t1ID1 doc1 12 doc2 13 doc3 24 doc4 3
所以我尝试这个查询,我收到一条错误消息,告诉我子查询= s附近没有这样的列(t1.t1ID)
SELECT t1c1,(SELECT GROUP_CONCAT(t2c1) FROM t2 WHERE t1.t1ID = t2.t1ID) FROM t1
有任何想法吗?最佳答案这适用于5.0和5.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 t1left JOIN t2ON t2.t1ID = t1.t1IDGROUP BY t1.t1ID
总结 以上是内存溢出为你收集整理的sql-如何在子查询中使用外部查询的列? 全部内容,希望文章能够帮你解决sql-如何在子查询中使用外部查询的列? 所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)