Substract datetime для получения дней и часов в MySQL
у меня есть таблица объединения, на таблице, которую я хочу объединить с основной таблицей, есть имя столбца datetime delivery_date_to
, Я хочу, чтобы вычесть delivery_date_to
к текущему времени даты и результату вычитания будет в формате дней и часов (Пример: 2 дня 23 часа) в качестве записи. Вот как я присоединяюсь к таблице
SELECT marketplace_orders.entity_id as id,
sales_order.delivery_date_to as delivery_date_to,
(deliver_date_to - current_time = xx days xx hour) as time_left
FROM marketplace_orders
INNER JOIN sales_order
ON sales_order.entity_id = marketplace_orders.order_id
AND sales_order.status IN ("pending","processing")
1 ответов
попробуйте это решение:
SELECT
marketplace_orders.entity_id as id,
sales_order.delivery_date_to as delivery_date_to,
CONCAT(TIMESTAMPDIFF(Day,deliver_date_to,NOW()), ' days ',
MOD(TIMESTAMPDIFF(HOUR,deliver_date_to,NOW()),24), ' hour') as time_left
FROM marketplace_orders
INNER JOIN sales_order
ON sales_order.entity_id = marketplace_orders.order_id
AND sales_order.status IN ("pending","processing")
демо :