在SQLServer2008中,如何编写查询以按组方式获取前10条记录,我想在pivot这样的单行列中显示这些记录 reccod=1表示注释 reccod=2表示条款和条件
这些是我的桌子结构;从这里,我想得到如下输出:在SQLServer2008中,如何编写查询以按组方式获取前10条记录,我想在pivot这样的单行列中显示这些记录 reccod=1表示注释 reccod=2表示条款和条件,sql,sql-server,sql-server-2008,Sql,Sql Server,Sql Server 2008,这些是我的桌子结构;从这里,我想得到如下输出: ponumb column1 column2 column3 column4 column5 ... column 11 col12 8615 note po 1 note po 2 note po 3 note po 4 note po 5 .. terms&cond1 t&2 样本数据: PONUMB RECCOD SRLNUB DESCRP ---------------------------
ponumb column1 column2 column3 column4 column5 ... column 11 col12
8615 note po 1 note po 2 note po 3 note po 4 note po 5 .. terms&cond1 t&2
样本数据:
PONUMB RECCOD SRLNUB DESCRP
------------------------------------
8615 1 1 NOTE PO 1
8615 1 2 NOTE PO 2
8615 1 3 NOTE PO 3
8615 1 4 NOTE PO 4
8615 1 5 NOTE PO 5
8615 1 6 NOTE PO 6
8615 1 7 NOTE PO 7
8615 1 8 NOTE PO 8
8615 1 9 NOTE PO 9
8615 1 10 NOTE PO 10
8615 1 11 NOTE PO 11
8615 1 12 NOTE PO 12
8615 2 1 TERMS AND CONDITION 1
8615 2 2 TERMS AND CONDITION 2
8615 2 3 TERMS AND CONDITION 3
8615 2 4 TERMS AND CONDITION 4
8615 2 5 TERMS AND CONDITION 5
8615 2 6 TERMS AND CONDITION 6
8615 2 7 TERMS AND CONDITION 7
8615 2 8 TERMS AND CONDITION 8
您可以创建两个数据透视,一个用于注释,一个用于术语,然后使用此查询
select * from
(select ponumb from table group by ponumb) as masterTable
left outer join (pivotqueryNotes) as Notes on notes.ponumb = masteratable.Ponumb
left outer join (pivotqueryTerms) as Terms on terms.ponumb = masteratable.Ponumb
在SQL Server 2008中,我使用的是前两行中提到的我想要的结果,例如我想要结果不要使用pivot和row_number概念,因为它在较低版本的SQL Server中不支持..向我们展示您迄今为止的尝试!如果您的代码有问题,我们很乐意为您提供帮助-我们将不只是为您编写整个代码,但是….选择PONUMB作为[采购订单编号],SRLNUB作为[序列号],[注1]=当SRLNUB=1和RECCOD=1时合并案例,然后DESCRP END,,[条款和条件1]=当SRLNUB=1和RECCOD=2时合并案例,然后DESCRP END,从INPONVEW开始,其中SRLNUB位于1,2,3,4,5,6,7,8,9,10中