2015-07-12 98 views
1

我有這個疑問:MySQL的未知列

select orders.* 
     ,customers.name as customername 
     ,customers.city as customercity 
     ,managers.name as managername 
     ,godowns.name as godownname 
from orders 
inner join customers 
inner join managers 
inner join godowns on orders.customerid=customers.customerid 
        and orders.managerid=managers.managerid 
        and orders.godownid=godowns.godownid 
order by orderid desc; 

我收到以下錯誤:

未知列 '的條款' 在 'orders.customerid'

我一直在竊聽這一整天。它在一個系統中運行,而不在另一個系統中運行

+0

你肯定有兩個系統之間沒有架構區別? –

+0

這兩個系統的架構是相同的。儘管我不得不重新創建整個模式,因爲由於語法錯誤,筆記本電腦中的備份副本沒有在我的桌面上恢復。爲什麼mysql會在其備份中產生語法錯誤? – kamal0808

+0

@SeanAllred - 如果可以的話,請告訴我不同​​之處,以便我可以在筆記本電腦中生成適當的查詢,而不是在客戶面前劃傷頭部! – kamal0808

回答

1
select orders.*,customers.name as customername,customers.city as customercity,managers.name as managername,godowns.name as godownname 
from orders 
inner join customers on orders.customerid=customers.customerid 
inner join managers on orders.managerid=managers.managerid 
inner join godowns on orders.godownid=godowns.godownid 
order by orderid desc 

每個連接需要一個on條款

+0

爲什麼我的查詢在我的筆記本電腦上,而不是在我的桌面上? – kamal0808

+0

不知道。你真的確定你使用相同的查詢嗎? –

+0

是的,相同的查詢,複製粘貼到不同服務器上的同一數據庫上的完整範圍 – kamal0808