SQL行转列报错

temppppp.jpg

ttttt.jpg

数据库是sqlserver

第一张图是未添加

(max(ILTRQTN,ILPAID) for ILDCT in('0','RI','2D')) pvt

前的数据库查询结果


想达成的效果如图二,因为数据量较大(不选择条件有80W行数据),所以不能拉多个数据源来实行,所以想在存储过程中加入行转列的语句从而达到图二的的数据的查询结果,现在参考网上的方法就是报错执行不了,请教下大牛们该如何解决?


--=============

@LarryAbby

wwwww.jpg

alanw 发布于 2020-9-22 10:49 (编辑于 2020-9-22 11:07)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共1回答
最佳回答
0
LarryAbbyLv5中级互助
发布于2020-9-22 10:58(编辑于 2020-9-22 12:05)

你是不是少了pivot关键字,你这应该是sqlserver数据库吧,如果sqlserver支持这种写法的话,应该在temp后面加上pivot关键字,然后再能行转列


pivot (max(ILTRQTN,ILPAID) for ILDCT in('0' ZE,'RI','2D'))

  • alanw alanw(提问者) 麻烦大牛看下我@你的那张图
    2020-09-22 11:08 
  • LarryAbby LarryAbby 回复 alanw(提问者) 你那个是数字0吧,你改下,用这个试试(\'0\' Z,\'RI\',\'2D\')
    2020-09-22 11:23 
  • 2关注人数
  • 289浏览人数
  • 最后回答于:2020-9-22 12:05
    请选择关闭问题的原因
    确定 取消
    返回顶部