LEFT JOIN查询MYSQL不起作用

时间:2014-05-01 17:28:29

标签: mysql sql

我有两张桌子rtz_order和rtz_restaurant

从订单中我想从我想要的餐厅购买价格" restaurant_commission"两者都有一个名为restaurant_id的列所以我想将这些列连接到表并将restaurant_commission添加到查询中。我想出了这个(日期部分等工作,我已经使用了,但是由于我添加了连接,查询不起作用)

$sql = 'SELECT 
    order.orderpurchase,
    order.orderdate,
    order.status,
    order.restaurant_id,
    res.restaurant_commission,
    res.restaurant_id
FROM rt_order order 
    LEFT JOIN rt_restaurant res ON order.restaurant_id = res.restaurant_id
WHERE date(order.orderdate) >= date(?) AND date(order.orderdate) <= date(?) 
    AND order.restaurant_id = ? AND order.status = "completed"';

我尝试了不同的东西,但我不明白为什么会出错#/ p>

2 个答案:

答案 0 :(得分:2)

ORDER是保留关键字。

使用像:

这样的反对意见
`ORDER`

查看保留关键字here的完整列表。

  

注意:最好避免为列名保留关键字,但如果使用,则将它们用背景包装。

答案 1 :(得分:1)

您的别名orderMySQL reserved word

使用反引号设置`order`,或更改别名&#39;名称。