oracle 列转行

表字段:cid(外键), imgId(主键),width,height,url,status.

每个外键可对应三条记录,现在在查询时,要根据cid获取到一条记录,这样就涉及到了列传行的问题。大概写法如下:不知各位仁兄可有更好的写法?忘不吝赐教!

select * from
(select nip.url as p1 from nong_image_properties nip where nip.resourceid='22') n1,
(select nip.url as p2 from nong_image_properties nip where nip.resourceid='23') n2,
(select nip.url as p3 from nong_image_properties nip where nip.resourceid='24')n3


2.使用函数查询:(昨日面试遇到一个这样的sql题,一时想不起来这种写法了,故重新在sqls——plus里调试了一下,记录与此,与列行互转无关)
select avg(case when t.salary>=3000 and t.sex=0 then salary end)a,
sum(case when t.salary<=3000 and t.sex=0 then salary end) b,
count(case when t.salary>=3000 and t.sex=1 then salary end) b
from emp t
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值