加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > PHP > 正文

php – 得到一组被记录的

发布时间:2020-05-25 09:02:33 所属栏目:PHP 来源:互联网
导读:首先是 SQL Fiddle Demo. 现在你可以看到小提琴我有两个名为项目和工作的表,现在我已经分组项目,它们具有相同的名称,除了第二个表有_QA后缀. 这意味着我已经成功实现了查询,允许我对该项目进行分组,但现在我还需要为这两个项目计算SUM计划时间. 如果你看到它

首先是 SQL Fiddle Demo.

现在你可以看到小提琴我有两个名为项目和工作的表,现在我已经分组项目,它们具有相同的名称,除了第二个表有_QA后缀.

这意味着我已经成功实现了查询,允许我对该项目进行分组,但现在我还需要为这两个项目计算SUM计划时间.

如果你看到它的未来1000,但它必须是2500意味着项目和project_QA的总和结果

谢谢.

我试试….:
SELECT p.name,(SELECT SUM(p1.planned_hour)
   FROM project p1
   WHERE REPLACE(p1.name,'_QA','') = REPLACE(p.name,'') ) AS ProjectPlannedHour,SUM( ROUND( TIME_TO_SEC( TIMEDIFF( vv.end_date,vv.start_date ) ) / 3600,2)) AS TotalHour
FROM project p
INNER JOIN working vv ON vv.project_id = p.id
GROUP BY  REPLACE(p.name,'')
ORDER BY TotalHour DESC
LIMIT 0,5

加入:

SELECT p.name,p1.planned_hour AS ProjectPlannedHour,SUM(ROUND(TIME_TO_SEC(TIMEDIFF(vv.end_date,vv.start_date)) / 3600,2)) AS TotalHour
FROM project p
INNER JOIN working vv ON vv.project_id = p.id
INNER JOIN (SELECT REPLACE(name,'') AS `name`,SUM(planned_hour) AS planned_hour
                   FROM project
                   GROUP BY REPLACE(name,'')) p1 
         ON REPLACE(p1.name,'')
GROUP BY REPLACE(p.name,'')
ORDER BY TotalHour DESC LIMIT 0,5

结果:

|    NAME | PROJECTPLANNEDHOUR | TOTALHOUR |
|---------|--------------------|-----------|
| project |               2500 |      4.67 |

也许有人给出了更好的解决方案,我还是不能说出更简单的查询……

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读