sql >> データベース >  >> RDS >> Oracle

ピボットで日付を指定せずに、日付行を列にピボットできますか? Oracle SQL

    pallets内 サブクエリでは、日付(次の5日または6日)の文字列表現を選択します。その代わりに、次のように整数を選択する必要があります。

    select .... , trunc(a.ord_to_ship_date) - trunc(sysdate) as days_ahead, ....
    

    そして、外側の選択で、

    pivot .... for days_ahead in (1 as today_plus_1, 2 as today_plus_2, 3 as ....)
    

    palletsに注意してください sysdateとsysdate+5の間にtrunc(a.ord_to_ship_date) between sysdate and sysdate + 5 。これは、クエリが正確に深夜に実行された場合、今日、明日、...、今日+ 5(合計6日)の出荷日を取得することを意味します。深夜以外の時間帯の場合は、5日しかありません-今日を除く。実際の要件はわかりませんが、TRUNC(sysdate)と比較することをお勧めします。 sysdateの代わりに 、クエリで必要なものを正確に確認してください。




    1. プリペアドステートメントのプレースホルダーがサブクエリにある場合の「フィールドリスト」の不明な列

    2. パスワードを変更した後、mysql5.7.9にログインできません

    3. phpからネストされたストアドプロシージャを呼び出す

    4. ログインしたユーザーがプロファイル設定/情報を更新/編集できるようにする方法