0
TIMESTAMP
列の表がrequest_date
と表示されています。タイムスタンプの時間部分を固定値に設定します。
この列の値を選択しますが、次の条件で値を選択します。時刻が19:00:00以降の場合は、翌日に08:00:00を選択する必要があります時間は08:00:00より前です。その日は08:00:00を選択してください)。
select節ではどのように実装されますか?
TIMESTAMP
列の表がrequest_date
と表示されています。タイムスタンプの時間部分を固定値に設定します。
この列の値を選択しますが、次の条件で値を選択します。時刻が19:00:00以降の場合は、翌日に08:00:00を選択する必要があります時間は08:00:00より前です。その日は08:00:00を選択してください)。
select節ではどのように実装されますか?
SELECT CASE WHEN request_date < TRUNC(request_date) + INTERVAL '8' HOUR
THEN TRUNC(request_date) + INTERVAL '8' HOUR
WHEN request_date >= TRUNC(request_date) + INTERVAL '19' HOUR
THEN TRUNC(request_date) + INTERVAL '32' HOUR
ELSE request_date
END AS adjusted_request_date
FROM table_name
または
SELECT CASE WHEN EXTRACT(HOUR FROM request_date) < 8
THEN TRUNC(request_date) + INTERVAL '8' HOUR
WHEN EXTRACT(HOUR FROM request_date) >= 19
THEN TRUNC(request_date) + INTERVAL '32' HOUR
ELSE request_date
END AS adjusted_request_date
FROM table_name
select
case
when to_char(request_date,'HH24') >= 19
then to_timestamp(to_char(trunc(request_date) +1,'YYYYMMDD') || '0800','YYYYMMDDHH24MI')
when to_char(request_date,'HH24') < 8
then to_timestamp(to_char(trunc(request_date),'YYYYMMDD') || '0800','YYYYMMDDHH24MI')
else request_date
end as ReqStartTS