oracle锁矩阵,关于Oracle矩阵相乘,等解

现在有个问题,有两张表,想实现TMP_A表中的列跟TMP_B表中的行相乘,如:

第一行id=1的值:constant1+constant2*a+constant3*b+constant4*c+constant5*d+constant6*e+constant*f

第二行id=2的值:constant1+constant2*a+constant3*b+constant4*c+constant5*d+constant6*e+constant*f

大家有没有好的方法,具体数据如下,

with tmp_b as(select 'a' type,.2 light,.4 moderate,.6 sever from dual union all

select 'b' type,.1 light,.2 moderate,.4 sever from dual union all

select 'c' type,.15 light,.55 moderate,.7 sever from dual union all

select 'd' type,.25 light,.3 moderate,.5 sever from dual union all

select 'e' type,.3 light,.4 moderate,.8 sever from dual union all

select 'f' type,.35 light,.5 moderate,.9 sever from dual)

select * from tmp_b;

with tmp_a as(

select 1 id,.0275655 constant1,-.09611775 constant2,.009376 constant3,.008786 constant4,.226310325 constant5,-.000294 constant from dual union all

select 2 id,.003727018 constant1,-.100667 constant2,.0138604 constant3,.0029905 constant4,.273166 constant5,-.0000929 constant from dual union all

select 3 id,-.0073838 constant1,-.15168102 constant2,.023317 constant3,-.00044 constant4,.533010243 constant5,-.00034227 constant from dual union all

select 4 id,-.00873551 constant1,-.006779 constant2,.0046666 constant3,.0124412 constant4,.627166 constant5,-.00024 constant from dual union all

select 5 id,-.0063843 constant1,-.03632205 constant2,.005907 constant3,.01061 constant4,.601081887 constant5,.00023661 constant from dual union all

select 6 id,-.0130118 constant1,-.141385 constant2,.0033054 constant3,.0067395 constant4,.637644 constant5,.000468 constant from dual)

select * from tmp_a

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值