Hvis du vil gøre dette i SQL*Plus uden at bruge PL/SQL, kan du bruge erstatningsvariabler :
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;
new_value
klausul
i column
direktivet tildeler automatisk værdien fra ethvert følgende valg til en lokal variabel, som jeg har sat foran med l_
men du kan ringe til hvad som helst. Du refererer derefter til den lokale variabel i fremtidige forespørgsler med &
variabel substitutionssyntaks.
Du kan bruge dem stort set overalt, hvor du normalt ville have en værdi. for eksempel. i where
klausul. Bemærk, at tekstværdier skal være anført i anførselstegn, derfor '&l_studentname'
; uden anførselstegn værdien ville blive fortolket som et kolonnenavn i dette tilfælde, hvilket ikke ville fungere.