2

私はテーブルを持っています:

 ID | Name | TDate
 1  | John | 1 May 2013, 8:67AM
 2  | Jack | 2 May 2013, 6:43AM
 3  | Adam | 3 May 2013, 9:53AM
 4  | Max  | 4 May 2013, 2:13AM
 5  | Leny | 5 May 2013, 5:33AM

TDate週末であるすべてのアイテムを返すクエリが必要です。このようなクエリをどのように記述しますか?

私がこれまでに持っているもの

select 
  table.*,
  EXTRACT (DAY FROM table.tdate )
from table

EXTRACT を使用して選択を行い、正しい値を取得できるかどうかを確認しました。ただし、パラメータ DAY を指定した EXTRACT は、日付を返します。ここのドキュメントに従って代わりに WEEKDAY を使用すると、エラーが発生します。

ERROR: timestamp units "weekday" not recognized
SQL state: 22023

制限 1250

EDIT TDate のデータ型は日時 (タイムスタンプ) です。読みやすいように、そのように書いただけです。しかし、タイプに関係なく、必要に応じてタイプ間で簡単にキャストできます。

5 月 4 日と 5 月 5 日が週末であることはわかっています (土曜と日曜にあたるため)。火の鳥は、週末に当たる場合に日付を返すクエリを作成する方法を許可していますか?

4

1 に答える 1

6

これを試して:

SELECT ID, Name, TDate
FROM your_table
WHERE EXTRACT(WEEKDAY FROM TDate) IN (6,0)

アップデート

状態であってはなり(0,6)ません(0,1)

于 2013-06-03T06:36:24.003 に答える