Когда я использую trunc(timestamp, 'D')
, он всегда дает мне понедельник этой недели. Можно ли попросить функцию вернуть другой день недели, например вторник? Спасибо!
Impala: день возврата встроенной функции trunc()
Ответы (2)
Вы должны использовать trunc(timestamp, 'J')
. См. документацию для Day, вы используете «Начальный день недели»:
trunc(timestamp, string unit)
Purpose: Strips off fields from a TIMESTAMP value.
Unit argument: The unit argument value is case-sensitive. This argument string can be one of:
SYYYY, YYYY, YEAR, SYEAR, YYY, YY, Y: Year.
Q: Quarter.
MONTH, MON, MM, RM: Month.
WW, W: Same day of the week as the first day of the month.
DDD, DD, J: Day.
DAY, DY, D: Starting day of the week. (Not necessarily the current day.)
HH, HH12, HH24: Hour. A TIMESTAMP value truncated to the hour is always represented in 24-hour notation, even for the HH12 argument string.
MI: Minute.
https://www.cloudera.com/documentation/enterprise/latest/topics/impala_datetime_functions.html
person
Matt
schedule
29.03.2017
легко, просто попробуйте SELECT TRUNC(timestamp, 'D') + INTERVAL 1 DAY;
person
Tom Yu
schedule
11.12.2017