我的 Sql(MySQL 说:#1052 - 字段列表中的列 'hswhouse.whname' 不明确
Posted
技术标签:
【中文标题】我的 Sql(MySQL 说:#1052 - 字段列表中的列 \'hswhouse.whname\' 不明确【英文标题】:My Sql(MySQL said: #1052 - Column 'hswhouse.whname' in field list is ambiguous我的 Sql(MySQL 说:#1052 - 字段列表中的列 'hswhouse.whname' 不明确 【发布时间】:2020-08-07 11:02:20 【问题描述】:create view House as
SELECT hswhouse.whname,hsitems.description,hsitems.numInStock
from hswhouse
inner join hsitems
inner join hswhouse on hswhouse.whnum = hsitems.whouseNum
where hswhouse.whname = "San Diego"
mysql 说:
#1052 - 字段列表中的列 'hswhouse.whname' 不明确
【问题讨论】:
【参考方案1】:您在查询中有两次表hswhouse
,没有别名,因此确实不明确表名hswhouse
指的是哪一个。
查看您的查询,join
s 之一缺少on
子句(这是除 MySQL 之外的大多数数据库中的语法错误),而且您似乎只需要一次表 hswhouse
。您最有可能想要:
create view House as
SELECT h.whname, i.description, i.numInStock
from hswhouse h
inner join hsitems i on h.whnum = i.whouseNum
where h.whname = 'San Diego'
【讨论】:
以上是关于我的 Sql(MySQL 说:#1052 - 字段列表中的列 'hswhouse.whname' 不明确的主要内容,如果未能解决你的问题,请参考以下文章
Laravel JOIN SQLSTATE [23000] 问题:违反完整性约束:字段列表中的 1052 列“album_id”不明确
django.db.utils.OperationalError:(1052,“字段列表中的列'名称'不明确”)
mysql Error:1052 Column 'xxx' in where clause is ambiguous
mysql 查询结果,先查含有某字段的数据,再查其他字段的数据