使用INNER JOIN和WHERE进行SQL查询

Fel*_*ipe 2 mysql sql database ms-access

我在尝试获取查询中的特定值时收到以下消息

"指定的字段可以引用多个表"

很明显,我正在尝试搜索多个表中存在的内容,但是如何做到这一点呢?

现在我有以下代码:

SELECT Table1.CustomerId, Table1.Address, 
       Table2.CustomerId, Table2.Telephone, 
       Table3.CustomerId, Table3.Notes
FROM (Table1 INNER JOIN Table2 ON Table1.CustomerId=TAble2.CustomerId) 
      INNER JOIN Table3 ON Table2.CustomerId=Table3.CustomerId
WHERE CustomerId = 0015
Run Code Online (Sandbox Code Playgroud)

最后一句是问题......任何想法?

Mah*_*mal 6

该错误信息是很清楚的,场CustomerIdWHERE条款WHERE CustomerId = 0015,提出在双方的两个表.您必须确定要从哪个表中使用它; table1还是table2?例如:

SELECT Table1.CustomerId, Table1.Address, 
       Table2.CustomerId, Table2.Telephone, 
       Table3.CustomerId, Table3.Notes
FROM (Table1 INNER JOIN Table2 ON Table1.CustomerId=TAble2.CustomerId) 
      INNER JOIN Table3 ON Table2.CustomerId=Table3.CustomerId
WHERE table1.CustomerId = 0015
Run Code Online (Sandbox Code Playgroud)


val*_*lex 5

您应该指出CustomerIdWHERE语句中的表是什么

SELECT Table1.CustomerId, Table1.Address, 
       Table2.CustomerId, Table2.Telephone, 
       Table3.CustomerId, Table3.Notes
FROM (Table1 INNER JOIN Table2 ON Table1.CustomerId=TAble2.CustomerId) 
      INNER JOIN Table3 ON Table2.CustomerId=Table3.CustomerId
WHERE Table1.CustomerId = 0015
Run Code Online (Sandbox Code Playgroud)