主表和从表的表结构如下附件所示。主表中有记录
编码 属性一 属性二
1 0001 设备一
从表中有记录
编码 编码2 name value
1 1 长度 100
2 1 高度 20
3 1 重量 50要求查询出的结果是
编码 属性一 属性二 长度 高度 重量
1 0001 设备一 100 20 50也就是后三项目是从表的行转变成的列。上述需求,该如何处理,请高人指点。
编码 属性一 属性二
1 0001 设备一
从表中有记录
编码 编码2 name value
1 1 长度 100
2 1 高度 20
3 1 重量 50要求查询出的结果是
编码 属性一 属性二 长度 高度 重量
1 0001 设备一 100 20 50也就是后三项目是从表的行转变成的列。上述需求,该如何处理,请高人指点。
解决方案 »
- oracle字符串中文内容替换的问题!
- 存储过程问题
- 关于rman备份所需空间的大小请高手提供经验
- 推荐一篇文章—oracle的事物隔离级别(isolation_level)
- data guard的备机不能自动APPLY,请问是怎么回事?100分。
- 我想学Oracle,刚安装完Oracle10G出现登陆出现如下错误请高手指教!
- 帮我分析一下这个表的结构,谢谢
- 还有一个问题:sysman的帐号与system\sys有什么区别?
- 在过程中写完后一定要commit吗?
- 【面试必过】Oracle数据库高级工程师-面试题-oracle dba面试题
- 如何在程序中把某个用户下的表结构复制到另一个用户,或者直接自动创建一个用户,把表结构都复制到该用户下
- oracle数据库的安装不成功还是什么其它原因,请赐教!!!!
select a.编码,a.属性一,a.属性二,sum(decode(b.name,'长度'),b.value,0) 长度 ,
sum(decode(b.name,'高度'),b.value,0) 高度 ,
sum(decode(b.name,'重量'),b.value,0) 重量
from a,b
where a.编码=b.编码2
group by a.编码,a.属性一,a.属性二
上面的方法对于数字是能够解决,不知道value值为字符的时候能否解决。
sum(decode(b.name,'高度'),to_number(b.value),0) 高度
如果是汉字或者全角型就比较麻烦了,应该先写个函数来转换下
max(decode(b.name,'高度'),b.value,null) 高度 ,
如果有多条纪录就会麻烦点,max不能保证出来你想要的