sql >> Database >  >> RDS >> Oracle

Een tijdelijke variabele declareren in Oracle Database

Als u dit in SQL*Plus wilt doen zonder PL/SQL te gebruiken, kunt u substitutievariabelen :

column studentname new_value l_studentname
select studentname from sometable where somecondition = 1;

column teachername new_value l_teachername
select teachername from sometable2 where somecondition >2;

select '&l_studentname', '&l_teachername,' other columns
from sometable where somecondition;

De new_value clausule in de column richtlijn wijst automatisch de waarde van elke volgende selectie toe aan een lokale variabele, die ik heb toegevoegd aan l_ maar je kunt alles bellen. Vervolgens verwijst u in toekomstige zoekopdrachten naar die lokale variabele met de & variabele vervanging syntaxis.

Je kunt ze vrijwel overal gebruiken waar je normaal gesproken een waarde zou hebben. bijv. in de where clausule. Merk op dat tekstwaarden tussen aanhalingstekens moeten staan, vandaar '&l_studentname'; zonder de aanhalingstekens de waarde zou in dit geval worden geïnterpreteerd als een kolomnaam, wat niet zou werken.



  1. IS NOT NULL-test voor een record retourneert niet TRUE wanneer variabele is ingesteld

  2. sql unieke tabel-/weergavenaam genereren

  3. Vergrendel mysql-tabel met php

  4. Formatteer datum in MySQL SELECT als ISO 8601