【问题标题】:ORA 01797- operator must be followed by any or allORA 01797 - 运算符后面必须跟任何或全部
【发布时间】:2014-06-16 02:34:38
【问题描述】:

我正在子查询的 where 子句中测试这样的条件。但是当我执行 SSRS 报告时,我收到错误“操作员必须后跟任何或全部”。

dbase 是 oracle。而且我需要将 IN 与参数一起使用,因为 SSRS 报告中的参数是多值的。我正在使用一个单独的函数来生成进入 :P_Date 的日期。 我需要检查此日期是否为 = 或

where 
trunc(tt.fyh_fecha) IN (:P_Date) OR
trunc(tt.fyh_fecha) <(:P_Date) OR 
trunc(tt.fyh_fecha) IS NULL AND
tc.cod_tree = 'blue' AND
tt.color_flower = 'pink'

【问题讨论】:

    标签: reporting-services oracle11g subquery


    【解决方案1】:

    这似乎并不直接可能 - 您正在尝试使用包含一组值的参数来对抗

    我将向日历/日期维度表添加一个联接,在该表中我将应用IN (:P_Date) 标准来获取日期值列表作为有意的交叉联接。

    然后我会替换:

    trunc(tt.fyh_fecha) IN (:P_Date) OR

    trunc(tt.fyh_fecha) &lt;(:P_Date) OR

    与:

    trunc(tt.fyh_fecha) &lt;= Dim_Date.Date_Value

    【讨论】:

      猜你喜欢
      • 2021-04-21
      • 1970-01-01
      • 1970-01-01
      • 2015-09-14
      • 1970-01-01
      • 2023-03-05
      • 2020-10-15
      • 2021-05-02
      • 1970-01-01
      相关资源
      最近更新 更多