MySQL SELECT *来自一个表,第二个表中有检查记录

时间:2015-11-09 19:25:52

标签: mysql

enter image description here

我有两张桌子。其中一个是订单表。
每个订单可以包含一个或多个作业。
每个工作可以有三种状态:"新"," in_progress"并且"完成"。
作业存储在第二个表中。
问题:如何构建查询以获取订单列表,其中所有作业都具有状态"已完成" ?
感谢您的帮助。

编辑:我只需要获得所有工作完成的订单。

1 个答案:

答案 0 :(得分:1)

你需要一个小技巧的联接:

select o.*,(count(*) = sum(j.jobStatus = 'finished')) all_done from orders o, jobs j where 
  o.orderID = j.orders_orderID group by o.orderID having all_done = 1