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

Oracleデータベースに一時テーブルをどのように作成しますか?

    はい、Oracleには一時テーブルがあります。これは、それらを説明するAskTomの記事へのリンクであり、オラクルの公式CREATETABLEドキュメントです。

    ただし、Oracleでは、データのみ 一時テーブル内は一時的です。このテーブルは、他のセッションから見える通常のオブジェクトです。 Oracleで一時テーブルを頻繁に作成および削除することは悪い習慣です。

    CREATE GLOBAL TEMPORARY TABLE today_sales(order_id NUMBER)
    ON COMMIT PRESERVE ROWS;
    

    Oracle 18cは、シングルセッションのメモリ内オブジェクトであるプライベート一時テーブルを追加しました。詳細については、ドキュメントを参照してください。プライベート一時テーブルは動的に作成および削除できます。

    CREATE PRIVATE TEMPORARY TABLE ora$ptt_today_sales AS
    SELECT * FROM orders WHERE order_date = SYSDATE;
    

    一時テーブルは便利な場合がありますが、Oracleでは一般的に悪用されています。多くの場合、インラインビューを使用して複数のステップを1つのSQLステートメントに結合することで回避できます。



    1. アイテムから追加されたデータベースエントリをボタンで削除できますか?

    2. バインド変数を使用してDMLを挿入します:即時ステートメントの実行の句を使用します

    3. Oracle11gでシーケンスをリセット

    4. MariaDBの新しいDBaaSの概要-SkySQL