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

Jak DAYNAME() działa w MariaDB

W MariaDB, DAYNAME() to wbudowana funkcja daty i czasu, która zwraca nazwę dnia tygodnia dla podanej daty.

Przyjmuje jeden argument, którym jest data, z której chcesz wyodrębnić nazwę dnia.

Składnia

Składnia wygląda tak:

DAYNAME(date)

Gdzie date to data, z której należy pobrać nazwę dnia.

Przykład

Oto przykład:

SELECT DAYNAME('2045-10-17');

Wynik:

+-----------------------+
| DAYNAME('2045-10-17') |
+-----------------------+
| Tuesday               |
+-----------------------+

Język

Język używany do nazwy dnia jest kontrolowany przez wartość lc_time_names zmienna systemowa.

Oto przykład, który pokazuje, jak to wpływa na wynik:

SET lc_time_names = 'de_DE';
SELECT DAYNAME('2045-10-17');

Wynik:

+-----------------------+
| DAYNAME('2045-10-17') |
+-----------------------+
| Dienstag              |
+-----------------------+

I przełączenie z powrotem do en_US , co jest ustawieniem domyślnym:

SET lc_time_names = 'en_US';
SELECT DAYNAME('2045-10-17');

Wynik:

+-----------------------+
| DAYNAME('2045-10-17') |
+-----------------------+
| Tuesday               |
+-----------------------+

Oto lista lokalizacji obsługiwanych przez MariaDB i oto jak zwrócić własną listę dostępnych lokalizacji.

Skoro już przy tym jesteśmy, oto post wyjaśniający, jak sprawdzić wartość swojego lc_time_names zmienna systemowa.

Wartości daty i godziny

Działa również z wartościami daty i godziny:

SELECT DAYNAME('2030-01-25 10:30:45');

Wynik:

+--------------------------------+
| DAYNAME('2030-01-25 10:30:45') |
+--------------------------------+
| Friday                         |
+--------------------------------+

Zero dni

Posiadanie dnia zerowego w dacie zwraca null :

SELECT DAYNAME('2030-00-00');

Wynik:

+-----------------------+
| DAYNAME('2030-00-00') |
+-----------------------+
| NULL                  |
+-----------------------+

Daty numeryczne

Możliwe jest również przekazywanie dat jako liczby, o ile ma to sens jako data.

Przykład

SELECT DAYNAME(20201108);

Wynik:

+-------------------+
| DAYNAME(20201108) |
+-------------------+
| Sunday            |
+-------------------+

Lata dwucyfrowe są w porządku:

SELECT DAYNAME(201108);

Wynik:

+-----------------+
| DAYNAME(201108) |
+-----------------+
| Sunday          |
+-----------------+

Ale to musi mieć sens jako randka. Oto, co się stanie, jeśli zwiększę część miesiąca do nieprawidłowego miesiąca:

SELECT DAYNAME(209908);

Wynik:

+-----------------+
| DAYNAME(209908) |
+-----------------+
| NULL            |
+-----------------+

Inne ograniczniki

Możesz użyć innych ograniczników daty. MariaDB jest dość wyrozumiała, jeśli chodzi o ograniczniki dat. Oto kilka poprawnych przykładów:

SELECT 
    DAYNAME('2027/08/19'),
    DAYNAME('2027,08,19'),
    DAYNAME('2027:08:19'),
    DAYNAME('2027;08!19');

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

DAYNAME('2027/08/19'): Thursday
DAYNAME('2027,08,19'): Thursday
DAYNAME('2027:08:19'): Thursday
DAYNAME('2027;08!19'): Thursday

Aktualna data

Możemy przekazać NOW() jako argument daty, aby użyć bieżącej daty:

SELECT 
    NOW(),
    DAYNAME(NOW());

Wynik:

+---------------------+----------------+
| NOW()               | DAYNAME(NOW()) |
+---------------------+----------------+
| 2021-05-13 13:29:10 | Thursday       |
+---------------------+----------------+

Nieprawidłowe argumenty

Po przekazaniu nieprawidłowego argumentu DAYNAME() zwraca null :

SELECT DAYNAME('Dang!');

Wynik:

+------------------+
| DAYNAME('Dang!') |
+------------------+
| NULL             |
+------------------+

Brakujący argument

Wywołanie DAYNAME() z niewłaściwą liczbą argumentów lub bez przekazywania jakichkolwiek argumentów powoduje błąd:

SELECT DAYNAME();

Wynik:

ERROR 1582 (42000): Incorrect parameter count in the call to native function 'DAYNAME'

I kolejny przykład:

SELECT DAYNAME('2030-01-25', '2045-05-08');

Wynik:

ERROR 1582 (42000): Incorrect parameter count in the call to native function 'DAYNAME'

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Konfigurowanie uwierzytelniania LDAP i mapowania grup za pomocą MariaDB

  2. MariaDB JSON_OBJECTAGG() Objaśnienie

  3. Porównanie ofert chmury klastrowej Galera:część trzecia Microsoft Azure

  4. Jak DAYOFYEAR() działa w MariaDB

  5. MariaDB Z WYJĄTKIEM Operatora wyjaśniono