MySql Double连接一个表和一个视图表

时间:2019-05-03 09:35:34

标签: mysql

我有一个表和一个视图表

具有以下列:

View1
Columns:
id int(11) AI PK 
pcode varchar(255) 
ref1 varchar(255) 
des varchar(255)

Table1
Columns:
id int(11) 
pcode varchar(255) 
brand varchar(255) 
description varchar(255) 
size varchar(255) 
barcode varchar(255)

我正在尝试运行查询以将两者双重加入。

这是我到目前为止尝试过的:

select * from table1
join view1 on table1.description  = view1.desc
join view1 on table1.pcode = view1.pcode;

但这会给我返回错误消息Error Code: 1066. Not unique table/alias: 'view1'

也尝试过这种方法:

select table1.pcode from((view1
join table1 on view1.description = table1.des)
join table1 on view1.pcode = table1.pcode);

给我同样的错误代码。

2 个答案:

答案 0 :(得分:1)

您必须使用以下提供者别名-

select * from table1
join view1 a on table1.description  = a.desc
join view1 b on table1.pcode = b.pcode

答案 1 :(得分:1)

由于查询中有两个view1,因此您需要为view1使用别名。

select * from table1
join view1 v1 on table1.description  = v1.desc
join view1 v2 on table1.pcode = v2.pcode;