Pl sql как получить день недели для даты oracle db

У меня есть дата оракула, я хочу перевести его на мою дату, например, 24.7.2011 - воскресенье, поэтому я хочу, чтобы функция возвращалась 1, для 25.7.2011 я хочу, чтобы она вернула 2 и так далее...

Я искал wwb для примеров, но без каких-либо успехов, пожалуйста, помогите мне.

Ответ 1

Функция Oracle для этого - TO_DATE с моделью формата "D":

SQL> select to_char (date '2011-07-24', 'D') d from dual;

D
-
7

Как вы можете видеть, это возвращает 7 для воскресенья, а не 1, когда я запускаю его. Возвращаемое значение зависит от ваших настроек NLS. При необходимости вы можете сделать это, чтобы получить то, что хотите:

SQL> select to_char (date '2011-07-24'+1, 'D') d from dual;

D
-
1

Подробнее о моделях формата даты Oracle можно найти здесь

Ответ 2

просто вам нужно написать to_char(your_date_column_name,'D'), он даст тот же ответ, что вы спросили

just нажмите здесь для более подробной информации