在Oracle SQL中声明一个变量以在查询中使用

时间:2013-10-15 01:17:27

标签: sql oracle variables select declare

您好我正在尝试声明一个在Oracle SQL select查询中使用的变量:

DECLARE 
  myDate DATE;
BEGIN
SELECT Source as "Source", DT as "Date", Status as "Status", COALESCE("Count", 0) as "Count"
FROM (Huge SubQuery that includes many WHERE date between x and y);
END;

我需要使用myDate进行查询,所以每次运行查询时我都不必在10个位置更新它。基本上它只用于声明一个可以在where日期使用的变量,它位于几个地方的子句之间。

2 个答案:

答案 0 :(得分:2)

试试这个:

variable var DATE
exec :var := '15-OCT-13'

然后选择使用:var in it

答案 1 :(得分:1)

我找到了一种为sql查询添加变量的方法,如下所示

DEFINE RES_DT = TO_DATE('11-AUG-15');

还要通过查询访问变量,我们必须使用'&'符号如下

select * from customer where assign_date = &RES_DT;