8

您好我正在尝试声明一个要在 Oracle SQL 选择查询中使用的变量,如下所示:

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 date is between 子句中使用。

4

2 回答 2

3

尝试这个:

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

然后在其中使用 :var 进行选择

于 2013-10-15T06:12:54.050 回答
1

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

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

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

select * from customer where assign_date = &RES_DT;
于 2015-08-12T10:23:58.703 回答