SQL 2000查询问题
考虑下表
create table sample(id, name, numeric, qno, ans1,ans2,ans3)
sample data
1, 'vivek', 1, 'a', 'b', ''
2, 'vivek', 1, 'c', 'd', ''
3, 'vivek', 2, 'e', 'f', 'g'
4, 'vivek', 3, 'h', 'i', 'j'
5, 'vijay', 1, 'k', '', 'l'
6, 'vijay', 2, 'm', '', 'n'
7, 'vijay', 2, 'o', '', 'p'
8, 'vikram', 3, 'q', 'r', 's'
output expected
column Names: name, info1, info2, info3
values
'vivek','ab','ef','hij'
'vivek','cd','',''
'vijay','kl', 'mn',''
'vijay','','op',''
'vikram','','','qrs'
将行转换为列。
换句话说。一个答案将占一行。一个问题可以有多个答案。
输出应将答案编号作为列。
sql 2000中有什么快速简便的技术吗?
consider the following table
create table sample(id, name, numeric, qno, ans1,ans2,ans3)
sample data
1, 'vivek', 1, 'a', 'b', ''
2, 'vivek', 1, 'c', 'd', ''
3, 'vivek', 2, 'e', 'f', 'g'
4, 'vivek', 3, 'h', 'i', 'j'
5, 'vijay', 1, 'k', '', 'l'
6, 'vijay', 2, 'm', '', 'n'
7, 'vijay', 2, 'o', '', 'p'
8, 'vikram', 3, 'q', 'r', 's'
output expected
column Names: name, info1, info2, info3
values
'vivek','ab','ef','hij'
'vivek','cd','',''
'vijay','kl', 'mn',''
'vijay','','op',''
'vikram','','','qrs'
converting rows into columns.
in other words. one answer will have one row. there can be multiple answers to one question.
the output should have answer numbers as columns.
is there any quick and easy technique in sql 2000?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
首先,如果我理解你的问题,那么我认为你的第一个结果应该是
'vivek','ab','efg','hij' 而不是 'vivek','ab','ef','hij'
如果是这样,那么我认为以下可能会做什么你想要的。
最近在 Sql 2000 中遇到了类似的问题,因此必须归功于这篇文章 在 SqlServerCentral 上
Firstly, if I understand your problem, then I think your first result should be
'vivek','ab','efg','hij' rather than 'vivek','ab','ef','hij'
If so, then I think the following may do what you want.
Had a similar problem with Sql 2000 recently, so credit must go to this article on SqlServerCentral
不,在 sql 2000 中没有简单的方法来创建数据透视表。
No, there's no simple way to create a pivot in sql 2000.