1

私はこのクエリを持っています... すべての月曜日の日付を取得するために、現在の日付から平日を引いたものを取得したいと考えています。ただし、 current_date は日付で、DOW は double であるため、エラーが発生します

select extract(day from(current_date)) - extract(dow from current_date)

ありがとう

4

2 に答える 2

3

9.2 ではエラーになりません。とにかく、月の最初の日は失敗します。

select extract(day from '2013-02-01'::date) - extract(dow from '2013-02-01'::date);
 ?column? 
----------
       -4

正しい方法:

select date_trunc('week', '2013-02-01'::date);
       date_trunc       
------------------------
 2013-01-28 00:00:00-02
(1 row)
于 2013-01-30T18:08:29.777 に答える
0

これは、あなたの望むことですか?

select extract(day from(current_date)) - extract(dow from current_date)

これは、週の最初の日の日付を取得します。

于 2013-01-30T18:00:29.983 に答える