求列转行sql

有庙无僧风扫地 2013-08-06 11:24:16
表的结构
表头 kpi_id dev_id value g_group
020102 sb1 192.186.1.1 2
020101 sb1 80 2
020102 sb1 192.186.1.2 1
020101 sb1 8080 1


需要展现的数据是
物理端口 IP地址
80 192.186.1.1
8080 192.186.1.2

原sql:
SELECT SUM(DECODE(T.KPI_NAME, '物理端口', nvl(S.VALUE, 0))) AS "020101",
SUM(DECODE(T.KPI_NAME, 'IP地址', nvl(S.VALUE, 0))) AS "020102",
S.G_GROUP as KPI_GROUPS
FROM S_DEVICEKPI S, S_KPIMSG T
WHERE S.KPI_ID = T.KPI_ID
AND S.DEV_ID = 'sb1'
GROUP BY S.G_GROUP
但是因为value 是字符串sum不能用 ,求大神没出招
...全文
179 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
糖果茜茜 2013-08-07
  • 打赏
  • 举报
回复
引用 3 楼 bb22110 的回复:
为什么 max可以sum不行了?
这两个都是可以列转行的,区别就是类型方面,sum的类型不能为字符型,只能为数值型。
  • 打赏
  • 举报
回复
为什么 max可以sum不行了?
sych888 2013-08-06
  • 打赏
  • 举报
回复
直接的用TO_NUM转成数字?
u010412956 2013-08-06
  • 打赏
  • 举报
回复
sum不能用,就用max嘛

17,140

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧