Amazon redshift 将日期名称转换为数字-例如,将星期一转换为1

Amazon redshift 将日期名称转换为数字-例如,将星期一转换为1,amazon-redshift,Amazon Redshift,我没有时间戳表。我只需要使用名称字符串进行转换 SELECT day_of_week; 输出应该是 day_of_week sum Friday 5 Monday 1 Saturday 6 Sunday 7 Thursday 4 Tuesday 2 Wednesday 3 如果是时间戳,则可以使用isodow。看 星期一(1)到周日(7) 但你没有那个专栏。因此,您可以在如下情况下使用CASE…- SELECT day_of

我没有时间戳表。我只需要使用名称字符串进行转换

SELECT day_of_week;
输出应该是

day_of_week sum
Friday       5
Monday       1
Saturday     6
Sunday       7
Thursday     4
Tuesday      2
Wednesday    3

如果是时间戳,则可以使用
isodow
。看

星期一(1)到周日(7)

但你没有那个专栏。因此,您可以在如下情况下使用
CASE…
-

SELECT day_of_week,
       CASE WHEN day_of_week='Monday' THEN 1
            WHEN day_of_week='Tuesday' THEN 2
            WHEN day_of_week='Wednesday' THEN 3
            WHEN day_of_week='Thursday' THEN 4
            WHEN day_of_week='Friday' THEN 5
            WHEN day_of_week='Saturday' THEN 6
            ELSE 7
       END as sum
    FROM your_table;
见文件:

SELECT day_of_week, EXTRACT(ISODOW FROM TIMESTAMP '2001-02-18 20:38:40') as sum FROM your_table;
SELECT day_of_week,
       CASE WHEN day_of_week='Monday' THEN 1
            WHEN day_of_week='Tuesday' THEN 2
            WHEN day_of_week='Wednesday' THEN 3
            WHEN day_of_week='Thursday' THEN 4
            WHEN day_of_week='Friday' THEN 5
            WHEN day_of_week='Saturday' THEN 6
            ELSE 7
       END as sum
    FROM your_table;