0

我正在尝试创建具有以下结果的视图。我可以很好地创建第一部分,但第二部分是我遇到问题的地方。当我进行加入时,我收到错误代码:1052。字段列表中的“customer_id”列不明确。现在我知道在两个表中我有重复的列。

我的问题是如何编写视图以忽略其中一个重复的列

创建一个名为 customer_addresses 的视图,显示每个客户的送货地址和账单地址。此视图应从客户表中返回这些列:

customer_id
email_address
last_name
first_name.

此视图应从 Addresses 表中返回这些列:

bill_line1
bill_line2
bill_city
bill_state
bill_zip
ship_line1
ship_line2
ship_city
ship_state
ship_zip

此视图中的行应按 last_name 列排序,然后是 first_name 列。

这是我的代码。

 CREATE OR REPLACE VIEW customer_addresses
 AS
 SELECT customer_id, email_address, last_name, first_name, addresses.line1
 FROM  customers JOIN addresses
 ORDER BY last_name
4

1 回答 1

0

我会像这样识别所有列:

CREATE OR REPLACE VIEW customer_addresses
 AS
 SELECT 
    customers.customer_id, 
    customers.email_address, 
    customers.last_name, 
    customers.first_name, 
    addresses.line1
 FROM  customers JOIN addresses
 ORDER BY customers.last_name

因为我相信你有一个customer_idcustomers表中,一个在addresses表中。正确的?

如果您不指定表名并将列添加到与视图中具有相同列名的表之一,则问题将再次出现。

于 2013-10-16T07:42:47.910 回答