Привет я имел подобную проблему, потребовалось некоторое время, чтобы подумать, и вот мой решение, у меня была таблица с абонентскими подписками, там печальное время начала и время закрытия, моя проблема была немного сложнее, в основном это сводилось к следующему:
SELECT subscription_id, time_open, time_closed, TIMESTAMPDIFF(DAY,time_open,time_closed) AS Day,
HOUR(sec_to_time(TIMESTAMPDIFF(SECOND,ADDDATE(`time_open`, INTERVAL TIMESTAMPDIFF(DAY,time_open,time_closed) DAY),`time_closed`))) AS Hour,
MINUTE(sec_to_time(TIMESTAMPDIFF(SECOND,ADDDATE(`time_open`, INTERVAL TIMESTAMPDIFF(DAY,time_open,time_closed) DAY),`time_closed`))) AS Minute,
SECOND(sec_to_time(TIMESTAMPDIFF(SECOND,ADDDATE(`time_open`, INTERVAL TIMESTAMPDIFF(DAY,time_open,time_closed) DAY),`time_closed`))) AS Second
FROM `user_subscription`
Итак, в основном, что этот запрос делает, так это то, что он вычисляет дни, выведя даты в первой строке. Затем он добавляет количество полных дней в исходное время и уменьшает время закрытия моей суммы, так что остается время в текущий день. После этого вы просто выбираете часы, минуты и секунды. Если вы хотите все это вместе, вы можете объединить строки, но таким образом вы можете использовать его дальше, в отличие от строк.
Что вы используете? sql-server, oracel, mysql – Arion
Какие РСУБД и что вы пробовали? – Rahul
Он получил 26 тысяч просмотров и золотой значок для этого: | – OGHaza