MySQL - Сегодняшняя дата
Привет,野心勃勃的数据库爱好者们! Сегодня мы окунемся в захватывающий мир дат в MySQL. Как ваш доброжелательный сосед по компьютерным наукам, я здесь, чтобы помочь вам понять все тонкости работы с сегодняшней датой в MySQL. Не волнуйтесь, если вы никогда не писали ни строчки кода раньше - мы начнем с самого начала и постепенно поднимемся. Так что достаньте свои виртуальные блокноты, и давайте начнем!
Сегодняшняя дата в MySQL
Что такое сегодняшняя дата в MySQL?
В MySQL "сегодняшняя дата"指的是根据数据库服务器的系统时钟的当前日期。就像问你的电脑:“嘿,今天星期几?”и получить точный ответ. Это может показаться простым, но это incredibly полезно во многих базах данных приложений.
Как получить сегодняшнюю дату
MySQL предоставляет несколько функций для получения текущей даты. Давайте посмотрим на самые распространенные:
Функция | Описание | Пример вывода |
---|---|---|
CURDATE() | Возвращает текущую дату | 2023-05-15 |
CURRENT_DATE() | Синоним для CURDATE() | 2023-05-15 |
CURRENT_DATE | Синоним для CURDATE() | 2023-05-15 |
NOW() | Возвращает текущую дату и время | 2023-05-15 14:30:00 |
Давайте попробуем это! Вот простой запрос, чтобы получить сегодняшнюю дату:
SELECT CURDATE() AS Today;
Это вернет что-то вроде:
+------------+
| Today |
+------------+
| 2023-05-15 |
+------------+
Круто, правда? Это как если бы у вас был встроенный календарь в вашей базе данных!
Форматирование даты
Иногда вы можете хотите отобразить дату в другом формате. MySQL предоставляет функцию DATE_FORMAT() для этого. Вот как вы можете использовать ее:
SELECT DATE_FORMAT(CURDATE(), '%W, %M %d, %Y') AS Formatted_Date;
Это может вернуть:
+-------------------------+
| Formatted_Date |
+-------------------------+
| понедельник, май 15, 2023 |
+-------------------------+
'%W', '%M', '%d', и '%Y' это спецификаторы формата, которые告诉 MySQL, как отображать дату. Это как если бы вы давали указания другу, как написать дату - "Сначала день недели, затем месяц, затем номер дня и, наконец, год."
Вставка значений даты в таблицу
Теперь, когда мы знаем, как получить сегодняшнюю дату, давайте рассмотрим, как мы можем использовать ее в реальном сценарии. Представьте, что мы создаем базу данных библиотеки и хотим отслеживать, когда книги были взяты взаймы.
Сначала создадим простую таблицу:
CREATE TABLE book_loans (
id INT AUTO_INCREMENT PRIMARY KEY,
book_title VARCHAR(100),
borrow_date DATE
);
Эта команда создает таблицу с тремя столбцами: ID, название книги и дата взятия в долг. Теперь inserted новый запись, используя сегодняшнюю дату:
INSERT INTO book_loans (book_title, borrow_date)
VALUES ('The MySQL Adventurer', CURDATE());
Это вставляет новую запись с текущей датой в качестве borrow_date. Это как если бы вы написали в журнале: "Кто-то взял 'The MySQL Adventurer' сегодня."
Мы можем проверить свою работу, выбрав из таблицы:
SELECT * FROM book_loans;
Вы можете увидеть что-то вроде:
+----+----------------------+------------+
| id | book_title | borrow_date|
+----+----------------------+------------+
| 1 | The MySQL Adventurer | 2023-05-15 |
+----+----------------------+------------+
Сегодняшняя дата с использованием клиентской программы
Когда вы работаете с MySQL через клиентскую программу (например, командная строка MySQL), вы также можете использовать функцию NOW() для получения текущей даты и времени. Вот быстрый пример:
SELECT NOW() AS Current_DateTime;
Это даст вам что-то вроде:
+---------------------+
| Current_DateTime |
+---------------------+
| 2023-05-15 15:30:45 |
+---------------------+
Это как если бы вы спросили у вашего наручного часы и дату и время!
Практическое применение: Calculator возраста
Давайте применим наши знания к практическому примеру. Представьте, что мы хотим вычислить возраст кого-то на основе их даты рождения. Мы можем использовать функцию DATEDIFF() вместе с CURDATE():
SELECT
'John Doe' AS Name,
'1990-05-15' AS Birthdate,
FLOOR(DATEDIFF(CURDATE(), '1990-05-15') / 365) AS Age;
Этот запрос может вернуть:
+----------+------------+------+
| Name | Birthdate | Age |
+----------+------------+------+
| John Doe | 1990-05-15 | 33 |
+----------+------------+------+
Здесь мы вычисляем количество дней между датой рождения и сегодняшней датой, а затем делим на 365, чтобы получить возраст в годах. Это как если бы вы считали свечи на生日ном торте, но намного быстрее!
Заключение
И вот мы arrived, друзья! Мы путешествовали по миру дат в MySQL, от простого получения сегодняшней даты до использования ее в практических сценариях. Помните, работа с датами может показаться сложной сначала, но с практикой это станет второй натурой.
Пока мы заканчиваем, у меня есть немного юмора для вас: Почему администратор базы данных оставил свою жену? Он хотел начать новые отношения! (Ба-дум-тс!)
Продолжайте практиковаться, оставайтесь любопытными, и вы很快 научитесь работать с датами в MySQL, как профессионал. Пока, счастливого кодирования!
Credits: Image by storyset