sql >> Database teknologi >  >> RDS >> Oracle

Hvordan opretter man en midlertidig tabel i en Oracle-database?

Ja, Oracle har midlertidige borde. Her er et link til en AskTom-artikel, der beskriver dem, og her er den officielle dokumentation for oracle CREATE TABLE.

Men i Oracle er det kun dataene i en midlertidig tabel er midlertidig. Tabellen er et almindeligt objekt, der er synligt for andre sessioner. Det er en dårlig praksis ofte at oprette og droppe midlertidige tabeller i Oracle.

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

Oracle 18c tilføjede private midlertidige tabeller, som er objekter i hukommelsen med en enkelt session. Se dokumentationen for flere detaljer. Private midlertidige tabeller kan oprettes og slettes dynamisk.

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

Midlertidige tabeller kan være nyttige, men de bliver almindeligvis misbrugt i Oracle. De kan ofte undgås ved at kombinere flere trin i en enkelt SQL-sætning ved hjælp af inline-visninger.



  1. Sådan konfigureres en PDO-forbindelse korrekt

  2. MySQL Database Service – Nye HeatWave-innovationer

  3. Hvordan kan jeg løse inkompatibel med sql_mode=only_full_group_by i laravel veltalende?

  4. Hvordan ændres standardsprog for SQL Server?