我如何加入4个表并从其中一个表中的列中获取最后一个值

时间:2014-09-27 17:06:21

标签: mysql

如何连接4个表并从其中一个表中的列中获取最后一个值加上如果任何表没有相关记录,它也应该显示但是具有空值。表格是: 产品,订单,订单历史和时间表。 我想获得所有订单信息,并获得每个订单发货日期“时间表”。请注意,每个订单只能有一个发货日期“schedule”,且值可以为null,订单历史记录表可以为每个订单提供多个记录,也可以为null。表之间的关系如下: 公司>产品>订单> order_history>时间表

外键如下: - 产品表> company_id为公司表 - 订单表>产品表的product_id - order_history>订单表的order_id - 时间表> order_history_id用于order_history表

我的代码似乎有误:

    SELECT product.name as product_name,orders.id as order_id,orders.quantity as order_quantity,orders.price as order_price,order_history.status as status,orders.created_at as order_date 
        FROM product 
        INNER JOIN orders ON product.id = orders.product_id AND product.company_id = 1
        LEFT JOIN order_history ON order_history.order_id = orders.id
        GROUP BY orders.id

我真的很感激你的帮助。但是,如果你能提供一个不需要改变架构的解决方案,那么这将是非常好的和有用的。如果您必须调整架构,那么请提供解决方案以及处理当前架构的任何建议,因为我正在研究电子商务api的原型,我必须在24小时内交付!

0 个答案:

没有答案