SqlServer 查询的问题
sql server 查询怎么将下列值
按照cId的值分成3列
例如:
cId1 | cId2 | cId0 |
---|---|---|
A203D53A-A692-46AF-9C3D-0000453FC531 | 9EE29150-DFF6-4FB2-B292-000A3657747B | 57C125E1-9A0D-4AF8-B0AD-00122388F4C0 |
47E1972B-53B0-4D43-8C00-002AB9661CCE | 4FB1E188-009C-4150-AD93-002DE24EAB9E | B2EBA976-3E11-4556-82E0-004DA78734B4 |
其中cId1列为cId=1的列 依次类推。
相当于
怎么把
select Id cId0 from table_name where cId=0;
select Id cId1 from table_name where cId=1;
select Id cId2 from table_name where cId=2;
三列值 并起来
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
利用行号
select max(case cId when 0 then id else '' end) cid0,
你试试
也可以用转置操作,但是你的数据要稍微改下,否则如果cid同样的值都存在多行没法确定哪三对变成一行
下面我造的例子是按循序三个算一组,到时变成一行
结果
g col1 cl2 col0
1 A203D53A-A692-46AF-9C3D-0000453FC531 9EE29150-DFF6-4FB2-B292-000A3657747B 57C125E1-9A0D-4AF8-B0AD-00122388F4C0
2 47E1972B-53B0-4D43-8C00-002AB9661CCE 4FB1E188-009C-4150-AD93-002DE24EAB9E B2EBA976-3E11-4556-82E0-004DA78734B4