使用Oracle SGBD的案例

时间:2015-02-21 21:03:25

标签: oracle oracle11g case where

我目前正在使用DBMS Oracle处理SpagoBI工具,如果在过滤器中没有选择任何值,我想首先使用包含“Case”的查询来实现过滤器,我将得到所有列的结果,当我从过滤器中选择一个值时,我将得到另一个与该值成比例的结果。

我尝试了这个查询:

select 
    price as price, qty as qty 
from 
    HR.TEST 
Where 
    year_column LIKE WHEN $P{year} = 'None' then year_column else $P{year} end

注意:我将过滤一年

  • $ P {Year}是工具“SpagoBI”中过滤器的值,其默认值为None。

  • 我尝试使用MySQL DBMS进行此查询,但它可以正常工作,但是使用oracle它不起作用。

1 个答案:

答案 0 :(得分:0)

将案例视为函数,返回 SQL类型。在谓词中,你总是会这样做

where f(x) <operator> expression

在AskTom中查看类似的question