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

Come funziona Oracle SELECT FROM dual con più campi

Il codice che hai trovato ha lo scopo di aggiornare una singola riga o crearla se non esiste.

DUAL è una tabella di sistema speciale contenente solo una riga. Selezionare da DUAL è una soluzione alternativa per l'incapacità di Oracle di fare semplicemente:

select sysdate;

Nota che non deve essere dual , può essere qualsiasi tabella di una riga o anche una query che restituisce una riga.

select sysdate
  from dual;

equivale a:

select sysdate
  from my_one_row_table;

e

select sysdate
  from my_table
 where my_primary_key = 1;

Dalla versione 10g, il dual table ha un percorso di accesso speciale che viene visualizzato nel piano di esecuzione come "fast dual", che si traduce in 0 get coerenti, che non è possibile ottenere da soli utilizzando altre tabelle.