我有三张表,我想从中显示一些信息。问题是其中一个ps_mycase_output_design
没有与其他人连接。
我想要的只是能够显示所有这些信息。我不需要通过ID,...或WHERE条款等查询。这是我从哪里开始但我已经
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ORDER BY mycase.key_product_output DESC LIMIT 10' at line 13
这是简单的查询
SELECT customer.*, mycase.*, orders.*
FROM
ps_customer customer
LEFT JOIN
ps_orders orders
LEFT JOIN
ps_mycase_output_design mycase
ORDER BY mycase.key_product_output DESC LIMIT 10
答案 0 :(得分:3)
如果您不想使用ON或WHERE子句,请尝试:
SELECT customer.*, mycase.*, orders.*
FROM
ps_customer customer,ps_orders orders,ps_mycase_output_design mycase
ORDER BY mycase.key_product_output DESC LIMIT 10
不确定这是否是您需要的逻辑。
答案 1 :(得分:2)
您可以使用join
或inner join
而不使用on
子句(甚至以逗号分隔的表名列表)来创建笛卡尔联接(表A中的每条记录都会连接到每条记录来自表B)。我更喜欢使用join
而不使用on
,因为联接和逗号具有不同的运算符优先级:
SELECT customer.*, mycase.*, orders.*
FROM
ps_customer customer
JOIN
ps_orders orders
JOIN
ps_mycase_output_design mycase
ORDER BY mycase.key_product_output DESC LIMIT 10
但是,我认为客户和订单表之间应该存在连接。由于您没有说明此类连接,我没有包含on
子句。