2015-09-27 67 views
0

我有4個表:SQL查詢不產生正確的結果

  1. 客戶提供列 - 用戶名,傳球,姓名等
  2. 書籍的列 - ID,標題,作者等
  3. 與列ORDER_DETAILS - id_order,身份證(ID書)等
  4. user_order與列 - id_order,用戶名,傳球,電子郵件等

我想打印出來的與列的表order_date的,書的標題,書的價格,這是爲了描繪歷史爲特定的用戶在過去3個月

我使用下面的SQL查詢書籍數量:

SELECT user_order.Order_Date, books.title, books.Price, Order_Details.Quantity 
from Customers INNER JOIN user_order ON Customers.username = user_order.username 
INNER JOIN Order_Details ON Order_Details.ID_Order = user_order.ID_Order 
INNER JOIN books ON books.id = order_Details.ID 
AND Customers.username = '".$username."' 
where user_order.ORDER_DATE < ADD_MONTHS(user_order.ORDER_DATE, 3) 

但給我多於預期的數量,數量超過預期產量。

有人可以幫我糾正查詢嗎?

回答

0

使用您的ADD_MONTHS命令,您將獲得3個月的日期。因此,通過說​​,您要求所有現有訂單日期。

+0

是的,這是問題之一,表中有一些冗餘數據導致了這個問題。非常感謝您的幫助 –

+0

非常歡迎。 如果您對我的回答滿意,請將其標記爲「已接受」,以便可以關閉問題。 – DarkSigma