如何解决SQL计算字符串变量列名
我想创建一个可变列名以将付款移动到所需期间的位置。 我想改变的部分是
concat('payment.[',(p.[Period]-1),']')
sql 将其正确读取为列很重要。 我想我现在可以使用一些反馈
select CredCase.id,p.Period,case when (p.[Period]-1)>=1 then concat('payment.[',']') else Null End [S_1]
......,case when (p.[Period]-120)>=120 then concat('payment.[',(p.[Period]-120),']') else Null End [S_120],payment.[1] [1]
......,payment.[120] [120]
from credcase
left join p on credcase.id=p.id
left join payment on credcase.id=payment.id
结果:
[id] [period] [S_1] [S_2] [S_3] [S_4] [S_5].... [S_120] paymnets: [1] [2] [3] [4] [5].... [120]
133 4 5.2 43.7 77.4 NULL NULL.... NULL 11.1 13.0 5.2 43.7 77.4 NULL
211 3 21.5 4.3 NULL 66.6 NULL.... NULL 7.8 21.5 4.3 NULL 66.6 NULL
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。