我在MySQL中有一个表A,其定义如下
----------------------------------
id c_id t_id
-------------------------------
Run Code Online (Sandbox Code Playgroud)
其中c_id使用以下定义引用另一个表B上的cid
================================================
id cid cname
=================================================
Run Code Online (Sandbox Code Playgroud)
所以我发出以下查询
select group_concat(cname) as list
from A join B using (cid)
where t_id="something";
Run Code Online (Sandbox Code Playgroud)
但我得到以下错误
Unknown column "cid" in from clause
Run Code Online (Sandbox Code Playgroud)
我尝试将其更改为"c_id",但这似乎不起作用..
任何帮助表示赞赏.
谢谢
Red*_*ter 15
USING在MySQL中,它只是标准ON子句的简短形式,只有在两个表中列名相同时才有效.
从手册:
USING(column_list)子句指定两个表中必须存在的列的列表.
相反,这样做:
select group_concat(B.cname) as list
from A
inner join B on A.c_id = B.cid
where A.t_id = 'something';
Run Code Online (Sandbox Code Playgroud)