MariaDB предоставя WEEKDAY()
функция и DAYOFWEEK()
функция, като и двете връщат деня от седмицата, представен като число.
Но върнатият номер е различен между тези функции.
Тази публикация разглежда разликата.
Разликата
Следната таблица подчертава разликата между тези две функции:
Функция | Индексиране |
---|---|
WEEKDAY() | 0 =понеделник 1 =вторник 2 =сряда 3 =четвъртък 4 =петък 5 =събота 6 =Неделя |
DAYOFWEEK() | Използва ODBC индексиране, което е:1 =неделя 2 =понеделник 3 =вторник 4 =сряда 5 =четвъртък 6 =петък 7 =събота |
Пример
Ето пример с всяка функция една до друга:
SELECT
DAYOFWEEK('2030-01-20') AS DAYOFWEEK,
WEEKDAY('2030-01-20') AS WEEKDAY,
DAYNAME('2030-01-20') AS DAYNAME;
Резултат:
+-----------+---------+---------+ | DAYOFWEEK | WEEKDAY | DAYNAME | +-----------+---------+---------+ | 1 | 6 | Sunday | +-----------+---------+---------+
Можем да видим, че всяка функция е върнала различно число, въпреки че е за един и същи ден.
Тук използвахме и DAYNAME()
за да върнете действителното име на деня.