Usa SELECT... FROM DUAL
nel UTILIZZO
clausola per generare una singola riga con i tuoi dati:
Impostazione dello schema Oracle 11g R2 :
crea tabella student ( sid int, name varchar(20), major varchar(10), gpa float, tutorid int, PRIMARY KEY (sid));insert in student values(101,'Bill',' CIS',3.45,102);inserire nei valori degli studenti(102,'Mary','CIS',3.1,null);inserire nei valori degli studenti(103,'Sue','Marketing',2.95,102);inserire in valori degli studenti(104,'Tom','Finanace',3.5,106);inserisci nei valori degli studenti(105,'Alex','CIS',2.75,106);inserisci nei valori degli studenti(106,'Sam',' Marketing',3.25,103);inserisci nei valori degli studenti(107,'Joan','Finance',2.9,102);
Query 1 :
unirsi in student dstusing ( SELECT 123 AS sid, 'Rahul' AS name, 'Temp' AS major FROM DUAL) srcon (src.major=dst.major)quando abbinato quindi aggiorna set name=src.namewhen non corrispondente quindi inserisci (SID, nome, principale) valori ( src.sid, src.name, src.major )
Query 2 :
SELEZIONA * DALLO studente
| SID | NOME | MAGGIORE | GPA | TUTORID ||-----|-------|-----------|--------|---------||| 101 | Bill | CSI | 3.45 | 102 || 102 | Maria | CSI | 3.1 | (nulla) || 103 | Sue | Marketing | 2.95 | 102 || 104 | Tom | Finanza | 3.5 | 106 || 105 | Alessio | CSI | 2.75 | 106 || 106 | Sam | Marketing | 3.25 | 103 || 107 | Giovanna | Finanza | 2.9 | 102 || 123 | Rahul | Temp | (nullo) | (null) |