如下语句:
select t_id,t_name,t_address,gid,deviceName,gName
from tempHum as th,device as de,igroup as gr
where th.deviceid = de.deviceid and th.gid = gr.gid
在执行时报:ambiguous column name:gid,
很奇怪的是我只查询了一遍gid列,因为gid在两张表里面都有,一张里面是主键,一张里面是外键。而且在MysqL中没有出现这样的错误,很是奇怪。
以前碰到过,因为当时用的是 select * ......,又因为那一列没有用,所有就没管,今天出现类似的情况,却无法避免,经过摸索已解决
select t_id,th.gid as gid,gName
from tempHum as th,igroup as gr
where th.deviceid = de.deviceid and th.gid = gr.gid
就是加粗的那几个代码。
问题虽不大,但终究是解决了,留个念。
原文链接:https://www.f2er.com/sqlite/200988.html