MariaDB
 sql >> Baza danych >  >> RDS >> MariaDB

3 sposoby na oddzielenie roku, miesiąca i dnia od daty w MariaDB

MariaDB ma kilka funkcji, które umożliwiają wyodrębnianie różnych części daty i godziny z wartości daty/czasu. Możesz ich użyć do oddzielenia każdego składnika daty/czasu do własnej kolumny, jeśli jest to wymagane.

Poniżej znajdują się trzy sposoby wyodrębnienia roku, miesiąca i dnia z wartości daty w MariaDB.

YEAR() , MONTH() i DAY() Funkcje

YEAR() , MONTH() i DAY() funkcje wyodrębniają odpowiednio rok, miesiąc i dzień z wartości daty lub daty i godziny.

Oto przykład użycia tych funkcji do zwrócenia każdego składnika daty w jego własnej kolumnie:

SELECT 
    YEAR('2025-08-30') AS "Year",
    MONTH('2025-08-30') AS "Month",
    DAY('2025-08-30') AS "Day";

Wynik:

+------+-------+------+
| Year | Month | Day  |
+------+-------+------+
| 2025 |     8 |   30 |
+------+-------+------+

DAY() funkcja jest właściwie synonimem DAYOFMONTH() , więc każdy z nich zwróci ten sam wynik.

Jest też WEEKDAY() funkcja DAYOFWEEK() funkcja DAYOFYEAR() funkcję i DAYNAME() funkcja, z których każda zwraca inną reprezentację dnia.

Dodatkowo jest MONTHNAME() funkcja zwracająca nazwę miesiąca zamiast jego numeru.

Oto kolejny przykład, który zawiera te funkcje:

SELECT 
    YEAR('2025-08-30') AS "YEAR",
    MONTH('2025-08-30') AS "MONTH",
    MONTHNAME('2025-08-30') AS "MONTHNAME",
    DAY('2025-08-30') AS "DAY",
    DAYOFMONTH('2025-08-30') AS "DAYOFMONTH",
    WEEKDAY('2025-08-30') AS "WEEKDAY",
    DAYOFWEEK('2025-08-30') AS "DAYOFWEEK",
    DAYOFYEAR('2025-08-30') AS "DAYOFYEAR",
    DAYNAME('2025-08-30') AS "DAYNAME";

Wynik (przy użyciu wyjścia pionowego):

      YEAR: 2025
     MONTH: 8
 MONTHNAME: August
       DAY: 30
DAYOFMONTH: 30
   WEEKDAY: 5
 DAYOFWEEK: 7
 DAYOFYEAR: 242
   DAYNAME: Saturday

Możesz także użyć funkcji takich jak WEEK() aby zwrócić numer tygodnia i QUARTER() aby zwrócić kwartał.

Przykład:

SELECT 
    WEEK('2025-08-30') AS "Week",
    QUARTER('2025-08-30') AS "Quarter";

Wynik:

+------+---------+
| Week | Quarter |
+------+---------+
|   34 |       3 |
+------+---------+

WEEK() funkcja przyjmuje drugi argument, który pozwala określić tryb. Może to zmienić wynikowy numer tygodnia, w zależności od rzeczywistej daty. Zobacz, jak WEEK() Działa w MariaDB, aby uzyskać więcej informacji i przykład.

EXTRACT() Funkcja

EXTRACT() funkcja pozwala na wyodrębnienie określonej jednostki z wartości daty/czasu. Dlatego możesz go użyć do wyodrębnienia roku, miesiąca i dnia z daty (a także tygodnia i kwartału, jeśli to konieczne).

Przykład:

SELECT 
    EXTRACT(YEAR FROM '2023-03-12') AS "Year",
    EXTRACT(MONTH FROM '2023-03-12') AS "Month",
    EXTRACT(DAY FROM '2023-03-12') AS "Day",
    EXTRACT(WEEK FROM '2023-03-12') AS "Week",
    EXTRACT(QUARTER FROM '2023-03-12') AS "Quarter";

Wynik:

+------+-------+------+------+---------+
| Year | Month | Day  | Week | Quarter |
+------+-------+------+------+---------+
| 2023 |     3 |   12 |   11 |       1 |
+------+-------+------+------+---------+

DATE_FORMAT() Funkcja

DATE_FORMAT() Funkcja umożliwia sformatowanie wartości daty lub daty i godziny na podstawie ciągu formatującego. Ciąg formatu określa sposób formatowania daty/godziny.

Dlatego możemy użyć tej funkcji, aby zwrócić rok, miesiąc, dzień i tydzień od daty.

Przykład:

SELECT 
    DATE_FORMAT('2035-12-08', '%Y') AS "Year",
    DATE_FORMAT('2035-12-08', '%m') AS "Month",
    DATE_FORMAT('2035-12-08', '%d') AS "Day",
    DATE_FORMAT('2035-12-08', '%U') AS "Week";

Wynik:

+------+-------+------+------+
| Year | Month | Day  | Week |
+------+-------+------+------+
| 2035 | 12    | 08   | 48   |
+------+-------+------+------+

Istnieje kilka możliwych specyfikatorów formatu dla każdej części daty. Każda część daty może zwrócić inną wartość, w zależności od dostarczonego specyfikatora formatu. Na przykład możesz zwrócić pełną nazwę miesiąca za pomocą %M zamiast %m .

Zobacz ciągi formatujące MariaDB, aby uzyskać pełną listę ciągów formatujących/specyfikatorów, których można używać z DATE_FORMAT() .


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 4 sposoby sprawdzenia, czy tabela istnieje w MariaDB

  2. Jak UNIX_TIMESTAMP() działa w MariaDB

  3. Jak obliczyć wiek w MariaDB

  4. 2 sposoby na uzyskanie zestawów znaków dostępnych w MariaDB

  5. Zapoznanie się z możliwościami i funkcjami MariaDB SkySQL