0

I have this query to extract total_hours, start_date and end_date:

select proj.start_date, proj.end_date, sum(ifnull(work.hours_estimate,0)) as total_hours
from project_table proj
left outer join project_task work on
    work.project_id = proj.id
where proj.id = 3

This query gives me a single row of result:

 start_date |   end_date    | total_hour
----------------------------------------
2017-04-24  |   2017-05-15  |   119

What I want is to generate a daily interval of rows, constantly decreasing the total_hours by a certain amount, say 19 hours, and the day increasing by 1 day.

Expected results:

    day     |  hours_left
------------------------
2017-04-24  |  119
2017-04-25  |  100
2017-04-26  |  81
2017-04-27  |  62
2017-04-28  |  43
2017-04-29  |  24

... and so on and so forth until it reaches 2017-05-15 (of course, no negative for hours_left, just zero if negative)

can't seem to figure out how to do this.

QUESTIONS:

1.) Is this possible in MySQL?

2.) If this is possible in MySQL, is it efficient/convinient?

If not, I could just do it in application, as state in the comments

Community
  • 1
  • 1
Geoman Yabes
  • 2,119
  • 2
  • 16
  • 38

0 Answers0