sql >> Database >  >> RDS >> Oracle

Hoe werkt Oracle SELECT FROM dual met meerdere velden?

De code die je tegenkwam is bedoeld om een ​​enkele rij bij te werken, of te maken als deze niet bestaat.

DUAL is een speciale systeemtabel met slechts één rij. Kiezen uit DUAL is een tijdelijke oplossing voor het onvermogen van Oracle om eenvoudig te doen:

select sysdate;

Merk op dat het niet dual hoeft te zijn , het kan elke tabel met één rij zijn of zelfs een zoekopdracht die één rij retourneert.

select sysdate
  from dual;

is gelijk aan:

select sysdate
  from my_one_row_table;

en

select sysdate
  from my_table
 where my_primary_key = 1;

Sinds versie 10g is de dual table heeft een speciaal toegangspad dat in het uitvoeringsplan wordt weergegeven als "fast dual", wat resulteert in 0 consistente geten, wat niet mogelijk is om alleen te bereiken met andere tabellen.



  1. Overeenkomen met het '%'-teken bij het zoeken in de MySQL-database

  2. MySQL INSERT IN SELECT JOIN

  3. Tel het aantal records dat door groep is geretourneerd door

  4. mysql_query() verwacht dat parameter 2 resource is, string opgegeven in