2012-10-12 61 views
0

有兩個名爲Customers和Payments的表。 他們都有「客戶編號」MYSQL在一個查詢中有多個表

這是我想要做的。

Select checkNumber, amount, CustomerNumber, CustomerName 
FROM Payments, Customers 

,我得到一個錯誤說:Unknown column ....`在 '字段列表'

我也試着這樣做查詢

Select checkNumber, amount, Payments.CustomerNumber, CustomerName 
FROM Payments, Customers 

它沒有工作T_T

我試過這個

請選擇checkNumberamountcustomerNumbercustomerName FROM paymentscustomers

我得到這個錯誤 「列customerNumber之'在字段列表不明確」

+0

你可以添加確切的SQL查詢到你的文章? – sglessard

+0

請添加真實的代碼和真實的名稱。因爲我很想隱瞞太模糊。 –

+0

'CustomerName'!='customerName'。 –

回答

0

是你的表名爲12

如果它們是,那麼mysql可能不會識別1和2作爲表名,而是數字。嘗試用反引號包圍表名:

select `1`.CustomerName, lastName, street, state 
from `1`, `2` 

順便說一句,這會給你行的每一個可能的組合...要小心(或使用join


UPDATE

鑑於評論中的新數據:

檢查字段名稱...必須寫入字段名稱,正好爲作爲表中的名字。請注意,您在from部分

+0

SELECT'checkNumber','amount','payments.customerNumber','customers。customerName' FROM'payments' INNER JOIN'Customers' ON payments.customersNumber = customers.customersNumber ----------這就是我現在正在做的事情,我仍然得到一個錯誤,沒有他們沒有命名爲1和2.這些僅僅是例子。 – LinearXCon

+0

沒有工作。我只是再次檢查拼寫。就像你說的那樣錯了。但是這並沒有解決任何問題。 – LinearXCon

1

時是在2和表2列具有相同名稱此錯誤happends寫在select部分payments.customerNumberpayments.customersNumber,所以你必須指定在表中同一列,即:

Select checkNumber, amount, Customers.CustomerNumber, CustomerName 
FROM Payments, Customers 

或儘量讓所有的報價表名和列的`這樣的:

Select `checkNumber`, `amount`, `Payments.CustomerNumber`, `CustomerName` 
FROM `Payments`, `Customers` 
+0

是的,但我該怎麼做? – LinearXCon

+0

我試過了,它不起作用 – LinearXCon

+0

請注意,當MySQL服務器被使用在Linux機器上時,MySQL對錶名是區分大小寫的。 'SELECT checkNumber,amount,Customers.CustomerNumber,CustomerName FROM Payments,Customers WHERE Customers.CustomerNumber = Payments.CustomerNumber' should should work。 WHERE子句或先前發佈的JOIN子句在我想要爲客戶讀取正確付款時強烈建議使用:) – Joysn