sql >> Databáze >  >> RDS >> Oracle

Vyhněte se častému volání stejného zobrazení uvnitř procedury Oracle

Pohled je uložený dotaz; sám o sobě neobsahuje žádná data. Pokud je jeho kód složitý a načítá data z několika tabulek pomocí různých podmínek, agregací atd., může přístup k datům nějakou dobu trvat.

Ve vaší situaci by možná pomohla globální (nebo soukromá; v závislosti na verzi Oracle, kterou používáte) dočasná tabulka (GTT).

  • vytvoříte jej jednou
  • na začátku procedury do něj vložte data z pohledu
  • zbytek postupu bude fungovat s připravenými údaje
  • jakmile relace (nebo transakce, podle toho, jak nastavíte GTT) skončí, data z tabulky se ztratí
    • Tabulku lze znovu použít při příštím spuštění procedury



  1. php server ERR_CONNECTION_REFUSED

  2. změňte výchozí modul mysql na innodb

  3. Chybí pravá závorka v příkazu SQL Create Table

  4. Jak mohu vytisknout výsledky dotazů MySQL ve formátu CSV?