0
我想傳遞一個PARAM在BIRT報表,並在多個palces使用它,例如使用一個PARAM在多個地方:如何在BIRT報表
SELECT * FROM tab1 WHERE startDAte = trunc(?)
UNION
SELECT *FROM tab1 WHERE startDate= trunc(?-1)
我該怎麼做?由於
我想傳遞一個PARAM在BIRT報表,並在多個palces使用它,例如使用一個PARAM在多個地方:如何在BIRT報表
SELECT * FROM tab1 WHERE startDAte = trunc(?)
UNION
SELECT *FROM tab1 WHERE startDate= trunc(?-1)
我該怎麼做?由於
這已經在Reusing an anonymous parameter in a prepared statement
如果你的數據庫是Oracle回答,您還可以使用下面的語法:
WITH params AS
(select ? as p_date,
? as p_whatever,
...
from dual
)
SELECT tab1.* FROM tab1, params WHERE tab1.startDate = trunc (params.p_date)
UNION
SELECT tab1.* FROM tab1, params WHERE startDate= trunc (parms.p_date - 1)
注意這並不有性能產生負面影響,因爲數據庫足夠聰明,可以檢測到參數內聯視圖只包含一行。