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

Hvordan kan jeg bruge TIL OPDATERING med en JOIN på Oracle?

prøv:

select ..... 
from <choose your table>
where id in (<your join query here>) for UPDATE;

REDIGER :det kan virke lidt kontraintuitivt med tanke på det spørgsmål, du linkede til (som spurgte, hvordan man undværer en IN ), men kan stadig give fordele, hvis din deltagelse returnerer et begrænset sæt. Der er dog ingen løsning:Orakel-undtagelsen er ret selvforklarende; oracle ved ikke, hvilke rækker der skal låses på grund af DISTINCT . Du kan enten udelade DISTINCT eller definere alt i en visning og derefter opdatere det, hvis du vil, uden den eksplicitte lås: http://www.dba-oracle.com/t_ora_02014_cannot_select_for_update.htm



  1. Hvordan bruger man underforespørgsel til at definere Mysql SELECT LIMIT offset?

  2. MySql:Sådan kalder du en lagret procedure, før du erklærer erklæringer

  3. Redigering af MySQL-omkodning ved hjælp af en HTML-formular

  4. Hvordan opretter man forbindelse til localhost PostgreSQL på Mac ved hjælp af PSequel GUI?