内连接mysql连接3个表

时间:2014-10-16 21:51:08

标签: mysql sql inner-join

我在使用3个表的内连接时遇到问题..

我需要显示cust_id,客户的姓名和姓氏,产品名称&lt ;-(来自产品表)和销售日期< - (来自销售表),我还需要按最近日期的顺序显示第一

这是我到目前为止所得到的

enter SELECT   
   customers.cust_id, 
   customers.forename, 
   customers.surname, 
   products.prod_name, 
   sales.Date_of_sale
FROM 
   customers
INNER JOIN 
   sales
ON 
   customers.cust_id = sales.cust_id; here

如果你能在这里帮助我,我真的很感激,谢谢...

2 个答案:

答案 0 :(得分:1)

只需在JOIN表中添加一个products并添加ORDER BY子句:

SELECT   
   c.cust_id, 
   c.forename, 
   c.surname, 
   p.prod_name, 
   s.Date_of_sale
FROM customers c
    INNER JOIN sales s ON c.cust_id = s.cust_id
    INNER JOIN products p ON s.product_id = p.product_id
ORDER BY s.Date_of_sale DESC

答案 1 :(得分:-1)

我认为问题出在你的FROM参数中。 您只指定了客户。

  SELECT customers.cust_id, customers.forename, customers.surname, products.prod_name,     sales.Date_of_sale
 FROM 
 customers , products , sales
 INNER JOIN 
 sales
 ON 
 customers.cust_id = sales.cust_id;