Освоение манипулирования датами в MySQL: запрос данных за предыдущий день

В этой записи блога мы рассмотрим различные методы запроса данных за предыдущий день в MySQL с использованием SQL. Независимо от того, являетесь ли вы новичком или опытным разработчиком, освоение манипуляций с датами — это ценный навык, который может расширить ваши возможности запросов к базе данных. Мы рассмотрим несколько разговорных методов и приведем примеры кода, которые помогут вам получить данные, полученные накануне.

Метод 1. Использование функции DATE_SUB():
Функция DATE_SUB() позволяет вычесть определенный интервал времени из заданной даты. Чтобы выбрать данные за предыдущий день, вы можете вычесть один день из текущей даты, используя ключевое слово INTERVAL.

SELECT *
FROM your_table
WHERE DATE_COLUMN = DATE_SUB(CURDATE(), INTERVAL 1 DAY);

Метод 2: использование функции DATE():
Функция DATE() извлекает часть даты из заданной даты и времени или метки времени. Вычитая один день из текущей даты, мы можем получить данные за предыдущий день.

SELECT *
FROM your_table
WHERE DATE_COLUMN = DATE(DATE_SUB(NOW(), INTERVAL 1 DAY));

Метод 3. Использование функции CURDATE():
Функция CURDATE() возвращает текущую дату. Вычитая один день из текущей даты, мы можем получить дату предыдущего дня.

SELECT *
FROM your_table
WHERE DATE_COLUMN = CURDATE() - INTERVAL 1 DAY;

Метод 4. Использование функции DATE_FORMAT():
Функция DATE_FORMAT() позволяет форматировать даты различными способами. Отформатировав текущую дату как «ГГГГ-ММ-ДД» и вычитая один день, мы можем получить данные за предыдущий день.

SELECT *
FROM your_table
WHERE DATE_COLUMN = DATE_FORMAT(NOW() - INTERVAL 1 DAY, '%Y-%m-%d');

Метод 5. Использование функции DATEDIFF():
Функция DATEDIFF() вычисляет разницу между двумя датами. Определив количество дней между текущей датой и предыдущим днем, мы можем соответствующим образом запросить данные.

SELECT *
FROM your_table
WHERE DATEDIFF(CURDATE(), DATE_COLUMN) = 1;

В этой статье мы рассмотрели несколько методов запроса данных за предыдущий день в MySQL с использованием SQL. Используя такие функции, как DATE_SUB(), DATE(), CURDATE(), DATE_FORMAT() и DATEDIFF(), вы можете легко получить нужные данные. Не забудьте выбрать метод, который лучше всего соответствует вашим конкретным требованиям и стилю кодирования.