Как использовать формат DATE в sql - Teradata - PullRequest
0 голосов
/ 08 мая 2020

У меня есть следующий набор результатов.

purchase_date              invoice_no
2020-05-06 13:14:54.000000 I2516211
2020-05-05 20:30:08.000000 I2515992
2020-05-05 02:00:26.000000 I2515763
2020-05-03 22:00:51.000000 I2515504

Мне нужно получить следующий набор результатов (с указанием количества счетов-фактур в день)

2020-05-03  1
2020-05-06  1
2020-05-05  2

не знаю, как использовать функцию формата даты в sql. (Im using teradata)

Ответы [ 2 ]

0 голосов
/ 08 мая 2020

Это то же самое, что и ответ Гордона, но с повторным использованием псевдонимов столбцов (функция Teradata):

SELECT 
  CAST(purchase_date AS DATE) AS purchase_date, 
  COUNT(*) AS purchase_count
FROM mytable
GROUP BY purchase_date
ORDER BY purchase_date;
0 голосов
/ 08 мая 2020

Вы можете преобразовать значение в строку, используя to_char():

select to_char(purchase_date, 'YYYY-MM-DD'), count(*)
from t
group by to_char(purchase_date, 'YYYY-MM-DD')
order by to_char(purchase_date, 'YYYY-MM-DD');

Вы также можете преобразовать значение в дату:

select cast(purchase_date as date), count(*)
from t
group by cast(purchase_date as date)
order by cast(purchase_date as date);
...