Я использую dbeaver, подключенный к apache Drill SQL, пытаясь получить день недели.
Например, для '1/27/2019'
днем недели является 1
, считая воскресенье первым днем недели.
Пример 2: '1/28/2019'
, вывод: 2
Я использую dbeaver, подключенный к apache Drill SQL, пытаясь получить день недели.
Например, для '1/27/2019'
днем недели является 1
, считая воскресенье первым днем недели.
Пример 2: '1/28/2019'
, вывод: 2
В Apache Drill SQL вы должны иметь возможность использовать метод преобразования типа данных TO_CHAR()
. а>. Спецификатор формата 'e'
должен быть тем, что вам нужно:
TO_CHAR(my_date_col, 'e')
Если ваши даты хранятся в виде строки, вам нужно сначала преобразовать их в дату, например, используя TO_DATE
:
TO_CHAR(TO_DATE(my_string_col, , 'MM/dd/yyyy'), 'e')
CASE WHEN TO_CHAR(my_date_col, 'e') = 1 THEN '7' ELSE TO_CHAR( TO_NUMBER( TO_CHAR(my_date_col, 'e'), '#' ) + 1, '#' ) END
- person GMB; 27.01.2019
TO_CHAR(date_col, 'e') вернет число. Например, если будний день понедельник, он вернет 1. и так далее...
TO_CHAR(date_col, 'E') вернет символы. Например, если будний день понедельник, он вернет Mon. и так далее...
Убедитесь, что ваш столбец даты находится в формате даты, если нет, сначала преобразуйте его в формат даты с помощью TO_DATE(), а затем выполните описанный выше шаг.