• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

挣扎正确连接多个表得到正确的数据

mysql 来源:472084 8次浏览

情况:挣扎正确连接多个表得到正确的数据

我的MySQL 5,我想制作公司和一些利润细节的报告。

  • 每个公司都有我们为他们做的工作。
  • 每一个工作都有参与该工作的工作件。
  • 每件作品都有一个任务类型

我要找回什么:

  • 我想知道每家公司从所有工作
  • 总费用占利润总额每家公司从所有工作
  • 花费在所有的工作对每家公司的总时间量 – 由工作型分离

公司表:

  • ID

工作表:

  • ID
  • COMPANY_ID
  • 预算
  • 成本

工作表:

  • ID
  • JOB_ID
  • TYPE_ID
  • START_TIME
  • END_TIME

类型表:

  • ID
  • hourly_rate

关系:

公司— <个工作— <工作> —类型

谢谢!

===========解决方案如下:

前两个可以与此查询发现:

select 
    c.name as company_name, 
    sum(hour(end_time) - hour(start_time)) * hourly_rate - sum(costs) as total_profit, 
    sum(costs) as total_costs 
from companies c 
join jobs j on j.company_id = c.id 
join work w on w.job_id = j.id 
join types t on t.id = w.type_id 
group by 1; 

最后可以用这个查询发现:

select 
    c.name as company_name, 
    t.name as work_type, 
    sum(hour(end_time) - hour(start_time)) as total_hours 
from companies c 
join jobs j on j.company_id = c.id 
join work w on w.job_id = j.id 
join types t on t.id = w.type_id 
group by 1, 2; 

版权声明:本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。
喜欢 (0)