小编Tra*_*nes的帖子

T-SQL 如何将前 3 行“展平”为单行

我已经搜索了这个问题的答案,并发现了与我自己类似的问题,但是我没有“ColumnHeader”列来指示记录应进入哪个字段。前任:

没有聚合函数的 TSQL Pivot

尝试将行展平为列

获取一行中多行的列

因此,我的问题是 - 我有这种格式的数据(从产品推荐查询中选择为前 3 个结果):

 ------------------------------
 CustID | StyleNo | Brand | ID 
 ------------------------------
    1   |   ABC   | BrandA| 1 
 ------------------------------
    1   |   DEF   | BrandB| 2 
 ------------------------------
    1   |   GHI   | BrandC| 3 
 ------------------------------
    2   |   JKL   | BrandA| 4 
 ------------------------------
    2   |   MNO   | BrandB| 5 
 ------------------------------
    2   |   PQR   | BrandD| 6 
 ------------------------------
Run Code Online (Sandbox Code Playgroud)

我想让它看起来像这样:

 -----------------------------------------------------------------
 CustID | StyleNo1| StyleNo2| StyleNo3 | Brand1 | Brand2 | Brand3
 -----------------------------------------------------------------
    1   |   ABC   | …
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server

4
推荐指数
1
解决办法
7037
查看次数

标签 统计

sql ×1

sql-server ×1

t-sql ×1