首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >创建视图,错误代码: 1052。字段中的"id“列是不明确的。

创建视图,错误代码: 1052。字段中的"id“列是不明确的。
EN

Stack Overflow用户
提问于 2019-05-09 13:56:48
回答 2查看 41关注 0票数 1

我正在尝试创建一个视图,但它的错误代码是: 1052。

我理解这个问题,因为我看了一个与我类似的帖子。我发现我在查询中需要别名。

这是我最初编码的:

代码语言:javascript
复制
create view checkd as (select * from wms join outerb on wms.barcode = 
concat('0',outerb.barcode));

这是我尝试用别名编码的尝试:

代码语言:javascript
复制
create view checkd as (select wms.id as wms.idWMS, wms.pcode as 
wms.pcodeWMS, wms.barcode as barcodeWMS from wms join outerb on 
wms.barcodeWMS = concat('0',outerb.barcode));

有人能给我指明正确的方向吗?我哪里出错了?

下面是我的列及其类型

代码语言:javascript
复制
Table: outerb
Columns:
id int(11) AI PK 
pcode varchar(255) 
brand varchar(255) 
descr varchar(255) 
size varchar(255) 
barcode varchar(255) 
checkd varchar(255)

`

代码语言:javascript
复制
Table: wms
Columns:
id int(11) AI PK 
pcode varchar(255) 
barcode varchar(255)

使用MySQL工作台。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-05-09 14:08:07

在第一个create视图中,您有两个id并使用*,结果是矛盾的。

在第二个create视图中,尝试使用一个简单的列名别名

代码语言:javascript
复制
  create view checkd as (
    select wms.id as idWMS
      , wms.pcode as pcodeWMS
      , wms.barcode as barcodeWMS 
    from wms 
    join outerb on  wms.barcodeWMS = concat('0', outerb.barcode));
票数 0
EN

Stack Overflow用户

发布于 2019-05-09 14:06:42

您的视图中有大量错误,请尝试如下

代码语言:javascript
复制
create view checkd as (select wms.id as wmsid, wms.pcode as 
wmspcodeWMS, wms.barcode as barcodeWMS from wms join outerb on 
wms.barcode = concat('0',outerb.barcode));
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56061082

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档