Извлечение дня недели как целого числа с помощью Netezza SQL - PullRequest
4 голосов
/ 12 февраля 2012

Это должно быть выполнимо, но как я могу извлечь день недели из поля, содержащего данные в формате даты, с помощью Netezza SQL?Я могу написать следующий запрос:

SELECT date_part ('day', a.report_dt) в виде report_dt FROM в виде

, но это дает мне день месяца.

спасибо за любую помощь

Ответы [ 4 ]

7 голосов
/ 14 февраля 2012

В приведенных ниже запросах указаны номера дней для любой недели, месяца и года для конкретной даты.

--Day of Week 
SELECT EXTRACT(dow FROM report_dt) FROM table;
--Day of Month
SELECT DATE_PART('day', report_dt) FROM table;
--Day of Year
SELECT EXTRACT(doy FROM report_dt) FROM table;
2 голосов
/ 13 февраля 2012

Netezza - это просто ANSI SQL, изначально производный от PostgreSQL. Я ожидаю, что это сработает.

select extract(dow from a.report_dt) as report_dt
from table as a

Возвращаемые значения должны находиться в диапазоне от 0 до 6; 0 воскресенье. Можно ожидать, что это целое число, но, по крайней мере, в PostgreSQL возвращаемое значение является плавающей точкой двойной точности.

1 голос
/ 02 июля 2014

Если вы хотите извлечь название дня:

Select to_char(date, 'Day') as Day_Name From table;
0 голосов
/ 11 октября 2013

В Netezza SQL команда SELECT EXTRACT (dow FROM report_dt) возвращает значения от 1 до 7. 1 - воскресенье, 7 - суббота.

...