2014-06-23 45 views
0

我有一定的查詢要我做,這些都是規格:憋屈訪問查詢

訂單準備送出去與客戶地址。這些類型的訂單可以被識別,因爲訂單的欠款金額將小於或等於0(如果還剩的金額小於零,這意味着它們實際上已付過多,所以訂單仍可以運出) ,並且訂單不會被標記爲已發出(發出的是錯誤的)。此查詢應列出所有客戶的信息,包括姓名,地址和電話以及所有訂單信息。輸出應按城市排序,然後按客戶姓氏排序。

這是SQL我有查詢:

SELECT tblCustomers.CustomerID, tblCustomers.Lastname, tblCustomers.Firstname,  
     tblCustomers.AddressLine1, tblCustomers.Phone, tblOrders.OrderID, 
     tblOrders.CustomerID, tblOrders.NumberOfCDs, tblOrders.OrderDate, 
     tblOrders.PaymentType, tblOrders.AmountPaid, tblOrders.Discount, tblOrders.OrderSent 
FROM tblCustomers 
INNER JOIN tblOrders ON tblCustomers.CustomerID = tblOrders.CustomerID; 

當我嘗試運行查詢它說:「在表達式類型不匹配」我怎樣才能解決這個問題?

+0

什麼樣的SQL是這樣的? –

+0

您必須向我們提供表格定義才能回答這個問題,但一個很好的猜測是您的CustomerID的列類型在tblCustomers和tblOrders中有所不同。 –

+0

可能的重複[需要幫助在訪問中進行多表查詢](http://stackoverflow.com/questions/24362572/need-helping-making-a-multi-table-query-in-access) –

回答

2

一個可能的解釋是,tblCustomers中的CustomerID列的數據類型與CustomerID列中的數據類型tblOrders不同。

沒有足夠的信息提供進一步診斷。

+0

是的客戶ID在tblCustomers是自動編號,另一個是短文本,我應該如何解決這個問題? – user3766854

+0

@ user3766854:您可以嘗試tblCustomers.CustomerID = CLng(tblOrders.CustomerID) – VBlades