W MySQL funkcja DAY()
funkcja jest synonimem DAYOFMONTH()
funkcjonować. Służy do zwracania dnia miesiąca od daty.
W tym kontekście „dzień miesiąca” to wartość z zakresu od 1 do 31 lub 0 dla dat z częścią dnia zerowego. Na przykład, jeśli podasz datę 2020-05-03 , DAY()
funkcja zwróci 3 .
Składnia
Składnia wygląda tak:
DAY(date)
Gdzie date
to wartość daty, z której ma być zwracany dzień miesiąca.
Przykład
Oto przykład do zademonstrowania.
SELECT DAY('2020-06-18') AS 'Result';
Wynik:
+--------+ | Result | +--------+ | 18 | +--------+
Jeśli część dnia ma wiodące zero, wiodące zero jest pomijane w wyniku. Przykład:
SELECT DAY('2020-06-07') AS 'Result';
Wynik:
+--------+ | Result | +--------+ | 7 | +--------+
Przykład bazy danych
Oto przykład wyodrębniania części dnia z kolumny podczas uruchamiania zapytania w bazie danych.
USE sakila; SELECT payment_date AS 'Date/Time', DAY(payment_date) AS 'Day of Month' FROM payment WHERE payment_id = 1;
Wynik:
+---------------------+--------------+ | Date/Time | Day of Month | +---------------------+--------------+ | 2005-05-25 11:30:37 | 25 | +---------------------+--------------+
Aktualna data/godzina
Oto przykład wyodrębnienia części dnia z bieżącej daty i godziny (która jest zwracana za pomocą funkcji NOW()
funkcja).
SELECT NOW(), DAY(NOW());
Wynik:
+---------------------+------------+ | NOW() | DAY(NOW()) | +---------------------+------------+ | 2018-06-25 18:30:44 | 25 | +---------------------+------------+
Innym sposobem na to jest użycie CURDATE()
funkcja, która zwraca tylko datę (ale nie godzinę).
SELECT CURDATE(), DAY(CURDATE());
Wynik:
+------------+----------------+ | CURDATE() | DAY(CURDATE()) | +------------+----------------+ | 2018-06-25 | 25 | +------------+----------------+