You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助编写基于RN_SCOPE分支逻辑的SELECT CASE WHEN语句

分支逻辑的SQL语句实现

你可以通过在WHERE子句中结合CASE WHEN来实现所需的分支逻辑,最终SQL语句如下:

SELECT code, description 
FROM table 
WHERE filter1 = 'Style' 
  AND filter2 IN (
    CASE '$EDIT#RN_SCOPE$'
      WHEN 'Project' THEN '$EDIT#FI_ASSET_CODE$'
      WHEN 'Standard' THEN '$PROJECT#PROJECT_Standard$'
    END
  )
ORDER BY sortorder;

逻辑说明

  • 当$EDIT#RN_SCOPE$取值为Project时,filter2会匹配$EDIT#FI_ASSET_CODE$对应的内容
  • 当$EDIT#RN_SCOPE$取值为Standard时,filter2会匹配$PROJECT#PROJECT_Standard$对应的内容
  • 始终保留filter1 = 'Style'的过滤条件,结果按sortorder排序

如果你的SQL环境支持更直观的逻辑组合,也可以使用以下等价写法:

SELECT code, description 
FROM table 
WHERE filter1 = 'Style' 
  AND (
    ('$EDIT#RN_SCOPE$' = 'Project' AND filter2 IN ('$EDIT#FI_ASSET_CODE$'))
    OR 
    ('$EDIT#RN_SCOPE$' = 'Standard' AND filter2 IN ('$PROJECT#PROJECT_Standard$'))
  )
ORDER BY sortorder;

内容的提问来源于stack exchange,提问作者Jeff Bowlin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 10:40:25