动态执行 SQL 查询结果集

【问题】

I have the following query:

SELECT****DISTINCT ORIGFROM VIEW_AWHERE $P{P_Info_Type}= 1

UNIONSELECTDISTINCT ORIGFROM VIEW_BWHERE $P{P_Info_Type}= 2

UNIONSELECTDISTINCT ORIGFROM VIEW_CWHERE $P{P_Info_Type}= 3

UNIONSELECTDISTINCT ORIGFROM VIEW_DWHERE $P{P_Info_Type}= 4

UNIONSELECTDISTINCT ORIGFROM VIEW_EWHERE $P{P_Info_Type}= 5

UNIONSELECTDISTINCT ORIGFROM VIEW_FWHERE $P{P_Info_Type}= 6

UNIONSELECTDISTINCT ORIGFROM VIEW_GWHERE $P{P_Info_Type}= 7

UNIONSELECTDISTINCT ORIGFROM VIEW_HWHERE $P{P_Info_Type}= 8

How can I make it as a dynamic query?

Update: Each query would be executed according to the value of the parameter P_Info_Type.

Thank you for the help,

【回答】

将编号和表名存在变量里(比如二维表、哈希表、临时表),通过查询编号来取表名,并动态执行 SQL,建议用 SPL 实现:

A
1=[1,“VIEW_A”,2,“VIEW_B”,3,“VIEW_C”,4,“VIEW_D”]
2=create(key,value).record(A1)
3=connect(“demo”)
4=A3.query("select distint ORIG FROM"+A2.select(key==argkey).value)

A2 运行结果 :

A1:将变量存入序列

A2:创建序表并写入记录

A3:链接数据库

A4:更加参数实现动态查询 argkey 是参数。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值