MariaDB има доста голям брой функции, които връщат деня от дата. Всичко зависи от това как искате да го направите и какво разбирате под „ден“.
MariaDB трябва да знае дали искате името на деня, номера на деня от седмицата, деня от месеца, деня от годината и т.н.
По-долу са дадени 8 функции, които ви позволяват да върнете деня от дата в MariaDB в различните му форми.
DAYNAME()
Функция
DAYNAME()
функцията връща името на деня от седмицата.
Пример:
SELECT DAYNAME('2023-07-25');
Резултат:
<пред>+-----------------------+| DAYNAME('2023-07-25') |+-----------------------+| вторник |+-----------------------+DAYOFMONTH()
Функция
DAYOFMONTH()
функцията връща номера на деня от месеца.
Пример:
SELECT DAYOFMONTH('2023-07-25');
Резултат:
+-------------------------+| DAYOFMONTH('2023-07-25') |+--------------------------+| 25 |+-------------------------+
DAY()
Функция
DAY()
функцията е синоним на DAYOFMONTH()
функция.
Пример:
SELECT DAY('2023-07-25');
Резултат:
+------------------+| DAY('2023-07-25') |+------------------+| 25 |+------------------+
Както се очакваше, същият резултат като DAYOFMONTH()
.
DAYOFWEEK()
Функция
DAYOFWEEK()
функцията връща индекса на деня от седмицата за датата, както е посочено от стандарта ODBC (1
=Неделя, 2
=Понеделник, …, 7
=събота).
Пример:
SELECT DAYOFWEEK('2023-07-25');
Резултат:
+------------------------+| DAYOFWEEK('2023-07-25') |+-------------------------+| 3 |+-------------------+
Вижте WEEKDAY()
по-долу за различно индексиране.
WEEKDAY()
Функция
WEEKDAY()
функцията е подобна на DAYOFWEEK()
в това, че връща индекса на седмицата за датата. Разликата е, че използва различно номериране на индекса (0
=Понеделник, 1
=вторник, … 6
=неделя).
Пример:
SELECT WEEKDAY('2023-07-25');
Резултат:
<пред>+-----------------------+| WEEKDAY('2023-07-25') |+-----------------------+| 1 |+-----------------------+DAYOFYEAR()
Функция
DAYOFYEAR()
функцията връща деня от годината за датата в диапазона 1
до 366
.
Пример:
SELECT DAYOFYEAR('2023-07-25');
Резултат:
+------------------------+| DAYOFYEAR('2023-07-25') |+-------------------------+| 206 |+------------------------+
EXTRACT()
Функция
функцията ви позволява да извлечете определена единица от датата. Следователно можете да го използвате, за да извлечете деня (както и други единици) от датата.EXTRACT
()
Пример:
SELECT EXTRACT(DAY FROM '2023-07-25');
Резултат:
+--------------------------------+| ЕКСТРАКТ(ДЕН ОТ '2023-07-25') |+--------------------------------+| 25 |+--------------------------------+
DATE_FORMAT()
Функция
DATE_FORMAT()
функцията ви позволява да форматирате дата въз основа на низ за форматиране. Форматният низ указва как трябва да бъде форматирана датата.
Следователно можете да използвате тази функция, за да върнете само деня от датата. Разбира се, можете да върнете и други единици, но тази статия е за връщането на деня.
Ето пример, който връща деня в различни форми:
SELECT
DATE_FORMAT('2023-07-25', '%a') AS "%a",
DATE_FORMAT('2023-07-25', '%D') AS "%D",
DATE_FORMAT('2023-07-25', '%d') AS "%d",
DATE_FORMAT('2023-07-25', '%e') AS "%e",
DATE_FORMAT('2023-07-25', '%j') AS "%j",
DATE_FORMAT('2023-07-25', '%W') AS "%W",
DATE_FORMAT('2023-07-25', '%w') AS "%w";
Резултат:
+------+------+------+------+------+---------+- -----+| %a | %D | %d | %e | %j | %W | %w |+------+------+------+------+------+---------+- -----+| вт | 25-ти | 25 | 25 | 206 | вторник | 2 |+------+------+------+------+------+---------+-- ----+
Вижте MariaDB Format Strings за обяснение на всеки от тези форматни низове/спецификатори.