Om du vill göra detta i SQL*Plus utan att använda PL/SQL kan du använda ersättningsvariabler :
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 tilldelar automatiskt värdet från alla följande val till en lokal variabel, som jag har lagt till l_ men du kan ringa vad som helst. Du refererar sedan till den lokala variabeln i framtida frågor med & variabel ersättningssyntax.
Du kan använda dem i stort sett var som helst där du normalt skulle ha ett värde. t.ex. i where klausul. Observera att textvärden måste omges av citattecken, därav '&l_studentname'; utan citattecken värdet skulle tolkas som ett kolumnnamn i det här fallet, vilket inte skulle fungera.