Si quiere hacer esto en SQL*Plus sin usar PL/SQL, puede usar variables de sustitución :
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;
El new_value
cláusula
en la column
La directiva asigna automáticamente el valor de cualquier siguiente selección a una variable local, que he añadido con l_
pero puedes llamar a cualquier cosa. Luego hace referencia a esa variable local en consultas futuras con &
sintaxis de sustitución de variables.
Puede usarlos prácticamente en cualquier lugar donde normalmente tendría un valor. p.ej. en el where
cláusula. Tenga en cuenta que los valores de texto deben estar entre comillas, por lo tanto, '&l_studentname'
; sin las comillas el valor se interpretaría como un nombre de columna en este caso, lo que no funcionaría.