Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите с SQL Пожалуйста

Дринк Стим Знаток (301), на голосовании 1 год назад
В таблице "санаторное лечение" имеется поле
"дата поступления" (в формате, к примеру, 2022-10-
31) и "продолжительность лечения" (в днях).
Напишите запрос, позволяющий вывести из этой таблицы всю информацию о пребывающих в санатории, выписка которых запланирована на Завтра по отношению к динамически меняющейся текушей дате, и сохранить эту выборку в виде представления "выписка_завтра"
Голосование за лучший ответ
SoldierWolf Мыслитель (5664) 1 год назад
Для того чтобы написать запрос, позволяющий вывести информацию о пребывающих в санатории, выписка которых запланирована на завтра, необходимо выполнить следующие действия:

Получить текущую дату в формате YYYY-MM-DD с помощью функции CURDATE().

Вычислить дату завтрашнего дня, сложив текущую дату и 1 с помощью функции DATE_ADD().

Сформировать запрос, используя условие WHERE, в котором выбрать только те записи, где дата выписки равна дате завтрашнего дня.

Сохранить полученную выборку в виде представления "выписка_завтра".

Итоговый SQL-запрос будет выглядеть примерно так:
 CREATE VIEW выписка_завтра AS 
SELECT *
FROM санаторное_лечение
WHERE DATE_ADD(дата_поступления, INTERVAL продолжительность_лечения DAY) = DATE_ADD(CURDATE(), INTERVAL 1 DAY);
Обратите внимание, что в данном запросе используется функция DATE_ADD(), которая позволяет добавлять к дате определенное количество дней (в данном случае - продолжительность лечения) и вычислять дату выписки.
Дринк СтимЗнаток (301) 1 год назад
Спасибо большое
Похожие вопросы