在Mysql中使用关键字

时间:2012-07-18 20:14:50

标签: mysql

我在MySQL中有一个带有以下定义的表A

----------------------------------
id    c_id     t_id
-------------------------------

其中c_id使用以下定义

引用另一个表B上的cid
================================================
id cid cname
=================================================

所以我发出以下查询

select group_concat(cname) as list
from A join B using (cid)
where t_id="something";

但是我收到以下错误

Unknown column "cid" in from clause

我尝试将其更改为“c_id”,但这似乎不起作用..

感谢任何帮助。

由于

3 个答案:

答案 0 :(得分:15)

MySQL中的

USING只是标准ON子句的简短形式,只有在两个表中列名相同时才有效。

来自the manual

  

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';

答案 1 :(得分:2)

两列都需要相同的名称:c_id或cid 然后using子句将起作用

答案 2 :(得分:0)

你可以使用

select group_concat(cname) as list
from A join B using (c_id)
where t_id="something";

c_id在表格中很常见。