Oracle
 sql >> база данни >  >> RDS >> Oracle

Деклариране на временна променлива в Oracle Database

Ако искате да направите това в SQL*Plus, без да използвате PL/SQL, можете да използвате променливи за заместване :

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 клауза в column директива автоматично присвоява стойността от всеки следващ избор на локална променлива, която съм добавил с l_ но можете да наричате всичко. След това препращате към тази локална променлива в бъдещи заявки с & синтаксис за заместване на променливи.

Можете да ги използвате почти навсякъде, където обикновено имате стойност. напр. в where клауза. Имайте предвид, че текстовите стойности трябва да бъдат оградени в кавички, следователно '&l_studentname'; без кавичките стойността ще се интерпретира като име на колона в този случай, което няма да работи.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Изпълнение/изпълнение на множество процедури паралелно - Oracle PL/SQL

  2. Продължавам да получавам грешка до върнатия VARCHAR(4)

  3. Oracle.DataAccess.Client.OracleCommand ExecuteReaderAsync

  4. Как да обезсилите SQL израз в областта на Oracle SQL, така че да се създаде нов план при събиране на статистика

  5. Как работи ROWNUM в заявка за пагинация?