如何在数据库oracle查询中创建临时变量?

时间:2013-05-16 09:09:49

标签: sql database oracle

与编程语言类似,是否可以创建临时变量并将其定义为值?例如

String date = '12-MAY-12' 

Select COUNT (*) FROM TABLEX WHERE TABLE_DATE < DATE; 

2 个答案:

答案 0 :(得分:1)

答案是,这取决于。

这取决于您使用的环境。

例如,Allround Automations PL / SQL Developer在变量的字符串之前接受符号&(在查询执行期间询问它们的值):

SELECT COUNT (*) 
FROM TABLEX 
WHERE TABLE_DATE < &DATE;

答案 1 :(得分:1)

使用Oracle PL / SQL可以轻松实现您的目标。我假设你只想使用SQL。如果是这种情况,可以采用以下方法:

WITH
  variable_table AS
  (
    SELECT
      to_date('12-MAY-2012') v_date
    FROM
      dual
  )
SELECT
  COUNT (*)
FROM
  TABLEX
WHERE
  TABLE_DATE <
  (
    SELECT
      v_date
    FROM
      variable_table
  )

我希望这会有所帮助