一直在試圖找出一個選擇查詢顯示星期幾,如週一,週二,週三,等我結束了顯示星期的日期選擇查詢,獲取星期幾PostgreSQL中
select ((date_trunc('week',current_date)::date) + (i+6)) as week_date
from generate_Series(0,6) i;
有沒有辦法得到週一,週二等的結果。
一直在試圖找出一個選擇查詢顯示星期幾,如週一,週二,週三,等我結束了顯示星期的日期選擇查詢,獲取星期幾PostgreSQL中
select ((date_trunc('week',current_date)::date) + (i+6)) as week_date
from generate_Series(0,6) i;
有沒有辦法得到週一,週二等的結果。
你可以做到這:
VALUES ('Sunday'), ('Monday'), ('Tuesday'), ('Wednesday'), ('Thursday'), ('Friday'), ('Saturday');
只需使用extract:
extract(dow from date_column::timestamp)
from whatever_table;
這代表星期日,1星期六返回0代表星期一,......,6。
編輯:或者,因爲你顯然不需要任何事實上需要抓取給定日期的星期幾,並且你只想要一個固定字符串值的列表示日期的名稱本週,只需創建一個表...
下面的查詢也適用
select to_char((date_trunc('week',current_date)::date) + i,'Day') as wkday from generate_series(0,6) i
在Postgres的9起有:
to_char(date, 'dy');
這將回報您的日期爲星期幾的文本值
嗨傑克,我不想天的數值,而不是我需要的查詢將所有七天返回爲'Sunday''Mononday'等。你能否提出其他可能性? – Reena 2012-02-25 06:33:54
@Flourida - 正如我在Edwin的答案的評論部分指出的那樣,如果你不需要這些動態生成的,那麼你爲什麼試圖在SQL中做到這一點?只需打印出「星期天」,「星期一」等字符串,然後完成。 – 2012-02-25 06:35:19
在不同列中打印值。我怎樣才能得到它在單列? – Reena 2012-02-25 06:39:19