Mysql
 sql >> Baza danych >  >> RDS >> Mysql

LAST_DAY() Przykłady – MySQL

Używając MySQL, możesz użyć LAST_DAY() funkcja zwracająca ostatni dzień danego miesiąca.

Możesz podać bieżącą datę lub inną określoną datę (na przykład datę z kolumny w bazie danych) i LAST_DAY() zwróci ostatni dzień miesiąca dla tej daty.

Składnia

Składnia wygląda tak:

LAST_DAY(date)

Gdzie date to data, za którą chcesz zwrócić ostatni dzień.

Przykład 1 – Podstawowe użycie

Oto przykład pokazujący, jak to działa.

SELECT LAST_DAY('2021-01-01');

Wynik:

+------------------------+
| LAST_DAY('2021-01-01') |
+------------------------+
| 2021-01-31             |
+------------------------+

Tak więc przyjmuje datę, którą podaliśmy jako argument, a następnie zwraca ostatni dzień tego miesiąca.

Przykład 2 – lata przestępne

Jak można się spodziewać, jest wystarczająco sprytny, aby radzić sobie z latami przestępnymi.

Rok inny niż przestępny

SELECT LAST_DAY('2021-02-01');

Wynik:

+------------------------+
| LAST_DAY('2021-02-01') |
+------------------------+
| 2021-02-28             |
+------------------------+

Rok przestępny

SELECT LAST_DAY('2020-02-01');

Wynik:

+------------------------+
| LAST_DAY('2020-02-01') |
+------------------------+
| 2020-02-29             |
+------------------------+

Przykład 3 – Wartości daty i godziny

Możesz również podać datę i godzinę wartość.

SELECT LAST_DAY('2021-02-01 23:59:15');

Wynik:

+---------------------------------+
| LAST_DAY('2021-02-01 23:59:15') |
+---------------------------------+
| 2021-02-28                      |
+---------------------------------+

Przykład 4 – Nieprawidłowe wartości

Jeśli podasz nieprawidłową datę, zostanie zwrócona wartość null.

SELECT LAST_DAY('2021-02-32');

Wynik:

+------------------------+
| LAST_DAY('2021-02-32') |
+------------------------+
| NULL                   |
+------------------------+
1 row in set, 1 warning (0.00 sec)

Przykład 5 – Przykład bazy danych

Oto przykład tej funkcji używanej w zapytaniu do bazy danych.

USE sakila;
SELECT
  payment_date AS 'Date/Time',
  LAST_DAY(payment_date) AS 'Last day of month'
FROM payment
WHERE payment_id = 1;

Wynik:

+---------------------+-------------------+
| Date/Time           | Last day of month |
+---------------------+-------------------+
| 2005-05-25 11:30:37 | 2005-05-31        |
+---------------------+-------------------+


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak czytać i resetować AUTO_INCREMENT w MySQL?

  2. Jak znaleźć podobne wyniki i posortować według podobieństwa?

  3. Mysql Konwertuj kolumnę na wiersz (tabela przestawna)

  4. Błąd podczas tworzenia tabeli:Wystąpił błąd w składni SQL w pobliżu 'order( order_id INT UNSIGNED NOT NULL AUTO_INCREMENT, user_id ' w wierszu 1

  5. Próba uzyskania własności nie-obiektowej - CodeIgniter