互联网服务商业智能默认值

prompt()默认值能否为一个查询语句

SELECT *
  FROM MV_GWZBFX
  WHERE ASSESSTYPE=#prompt('请选择考核类别')#
  AND GRADECODE=#prompt('请选择岗位')#
  AND VERSIONID=#prompt('请选择版本代码')#
  AND (
       ( #prompt('请选择考核类别')#='2' AND MONTHCODE=#prompt('请选择月份','string',''SELECT MAX(MONTHCODE) FROM MV_GWZBFX  WHERE ASSESSTYPE='2''')# )
    OR ( #prompt('请选择考核类别')#='3' AND QUARTERCODE=#prompt('请选择季度','string',''SELECT MAX(QUARTERCODE) FROM MV_GWZBFX  WHERE ASSESSTYPE='3''')# )
    OR ( #prompt('请选择考核类别')#='4' AND YEARCODE=#prompt('请选择年度','string',''SELECT MAX(YEARCODE) FROM MV_GWZBFX  WHERE ASSESSTYPE='4''')# )
       )

我想在上面的SQL的宏函数prompt()里设一个默认值,但是默认值是一个查询语句,这样写验证没通过,请问应该如何修改,谢谢大家。
参与6

5同行回答

Ted_XuTed_Xu数据仓库工程师...
#prompt('请选择考核类别',‘string’)#   我记得在sql里面可以这样写吧显示全部
#prompt('请选择考核类别',‘string’)#   我记得在sql里面可以这样写吧收起
IT咨询服务 · 2015-06-24
浏览1397
zhonghanquanzhonghanquan业务部门经理信和汇诚
回复 4# jjylys    (       ( #prompt('请选择考核类别')#='2'         AND MONTHCODE=DECODE(#prompt('请选择月份')#,NULL,SELECT MAX(MONTHCODE) FROM MV_GWZBFX  WHERE ASSESSTYPE='2',#prom...显示全部
回复 4# jjylys


   (       ( #prompt('请选择考核类别')#='2'
        AND MONTHCODE=DECODE(#prompt('请选择月份')#,NULL,SELECT MAX(MONTHCODE) FROM MV_GWZBFX  WHERE ASSESSTYPE='2',#prompt('请选择月份')#) )
    OR ( #prompt('请选择考核类别')#='3'
        AND QUARTERCODE=DECODE(#prompt('请选择季度')#,NULL,SELECT MAX(QUARTERCODE) FROM MV_GWZBFX  WHERE ASSESSTYPE='3',#prompt('请选择季度')#) )
    OR ( #prompt('请选择考核类别')#='4'
        AND YEARCODE=QUARTERCODE=DECODE(#prompt('请选择年度')#,NULL,SELECT MAX(YEARCODE) FROM MV_GWZBFX  WHERE ASSESSTYPE='4',#prompt('请选择年度')#) )
       )
刚才试了,验证还是不通过,报:
UDA-SQL-0107 “prepare”操作期间发生常规例外。
ORA-00936: 缺失表达式收起
互联网服务 · 2015-06-19
浏览1343
jjylysjjylys软件开发工程师xc
代大神回复 可以试试用decode函数decode(prompt,null,默认值,prompt)显示全部
代大神回复 可以试试用decode函数

decode(prompt,null,默认值,prompt)收起
互联网服务 · 2015-06-19
浏览1367
zhonghanquanzhonghanquan业务部门经理信和汇诚
回复 2# jielee    MONTHCODE=#prompt('请选择月份','string',''SELECT MAX(MONTHCODE) FROM MV_GWZBFX  WHERE ASSESSTYPE='2''')# 默认值那地方我用过'SQL语句'、''SQL语句''、'(SQL语句)'这三种形式,验证都不通过,真不知道怎么写了。...显示全部
回复 2# jielee


   MONTHCODE=#prompt('请选择月份','string',''SELECT MAX(MONTHCODE) FROM MV_GWZBFX  WHERE ASSESSTYPE='2''')# 默认值那地方我用过'SQL语句'、''SQL语句''、'(SQL语句)'这三种形式,验证都不通过,真不知道怎么写了。收起
互联网服务 · 2015-06-19
浏览1415
jieleejielee软件开发工程师top
prompt中的内容,是有格式的,格式中只有字符、数值等,没有“语句”这一项。你可以把格式设置为字符串,但怎么执行,还不知道。显示全部
prompt中的内容,是有格式的,格式中只有字符、数值等,没有“语句”这一项。

你可以把格式设置为字符串,但怎么执行,还不知道。收起
政府机关 · 2015-06-19
浏览1344

提问者

zhonghanquan
业务部门经理信和汇诚
擅长领域: 大数据商业智能服务器

相关问题

相关资料

问题状态

  • 发布时间:2015-06-19
  • 关注会员:1 人
  • 问题浏览:3783
  • 最近回答:2015-06-24
  • X社区推广