特定の時間枠内で行を検索する必要があります。
select *
from TableA
where startdate >= '12-01-2012 21:24:00'
and startdate <= '12-01-2012 21:25:33'
つまり:SECONDSのタイムスタンプ精度で行を検索する必要があります。どうすればこれを達成できますか?
参考:startdate
列のタイプはTIMESTAMP
です。
to_timestamp()
を使用して、文字列を適切なtimestamp
値に変換する必要があります。
to_timestamp('12-01-2012 21:24:00', 'dd-mm-yyyy hh24:mi:ss')
列のタイプがDATE
(秒もサポート)の場合、to_date()
を使用する必要があります
to_date('12-01-2012 21:24:00', 'dd-mm-yyyy hh24:mi:ss')
これをwhere
状態にするには、次を使用します。
select *
from TableA
where startdate >= to_timestamp('12-01-2012 21:24:00', 'dd-mm-yyyy hh24:mi:ss')
and startdate <= to_timestamp('12-01-2012 21:25:33', 'dd-mm-yyyy hh24:mi:ss')
タイプtimestamp
の列でto_timestamp()
を使用する必要はありません。
タイムスタンプに秒の小数部を使用してこのスレッドにアクセスするすべての人に対して:
to_timestamp('2018-11-03 12:35:20.419000', 'YYYY-MM-DD HH24:MI:SS.FF')