如何在透视中为列提供自定义名称

omkar patade

我有一张这样的桌子:

id  unit
1   mm  
2   cm 
3   kg

当我对此执行枢轴操作时,得到的结果如下:

1  2  3
mm cm kg

是否可以在此处获取自定义列名称,如下所示:

d1  d2  d3
mm  cm  kg

我为此使用数据透视:

IF OBJECT_ID('tempdb..#t') IS NOT NULL 
DROP TABLE #t
GO

CREATE  table #t 
(id varchar(max),unit varchar(max))
insert into #t (id,unit)values 
(1,'kg'),
(2,'cm'),
(3,'mm'),
(4,'m')

DECLARE @statement NVARCHAR(max)
   ,@columns NVARCHAR(max)

SELECT @columns = ISNULL(@columns + ',', '') + N'[' + cast(tbl.id as varchar(max)) + ']'
   FROM (
   SELECT DISTINCT id
   FROM #t
   ) AS tbl

   SELECT @statement =  'select * 
                  INTO ##temp 
                  from (
                    SELECT id,[unit]
                    FROM #t
                    ) as s 
PIVOT
(max(unit) FOR id in(' + @columns + ')) as pvt
'


EXEC sp_executesql @statement = @statement




SELECT * FROM ##temp
DROP TABLE #t
DROP TABLE ##temp

是否有可能?谢谢

德瓦特
IF OBJECT_ID('tempdb..#t') IS NOT NULL
    DROP TABLE #t
GO

CREATE TABLE #t (
    id VARCHAR(10),
    unit VARCHAR(100)
)
INSERT INTO #t (id, unit)
VALUES
    ('1', 'kg'),
    ('2', 'cm'),
    ('3', 'mm'),
    ('4', 'mm')

DECLARE @SQL NVARCHAR(MAX), @columns NVARCHAR(MAX)

SELECT @columns = STUFF((
    SELECT ',[D' + id + ']'
    FROM #t
    FOR XML PATH('')), 1, 1, '')

SELECT @SQL =  '
    SELECT * 
    FROM (
        SELECT [unit], col = N''D'' + id
        FROM #t
    ) s 
    PIVOT (MAX(unit) FOR col IN (' + @columns + ')) p'

EXEC sys.sp_executesql @SQL

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Django表单中为窗口小部件提供自定义名称

来自分类Dev

如何在HTML中为<li>元素定义自定义名称?

来自分类Dev

如何在蛋糕3中为Flash消息提供自定义的CSS类

来自分类Dev

如何在TreeView中为工具提示提供MaxWidth(或自定义样式)

来自分类Dev

如何在WPF中为Tab控件提供自定义形状?

来自分类Dev

如何在C#中为dateTimePicker提供自定义格式

来自分类Dev

如何在XAML文件中的mapControl上为ImageTilesLayer的DataProvider提供自定义数据?

来自分类Dev

如何在Python中为字符串对象提供自定义方法?

来自分类Dev

如何在蛋糕3中为Flash消息提供自定义的CSS类

来自分类Dev

如何在android中为样式指定商品的自定义包装名称?

来自分类Dev

如何在mybatis generator中为mapper文件和接口设置自定义名称、后缀?

来自分类Dev

如何在自定义控件中为内部DataGrid定义列

来自分类Dev

如何在JAXB中自定义属性名称?

来自分类Dev

如何在Helmchart中设置自定义发布名称

来自分类Dev

如何在Javers中自定义属性名称

来自分类Dev

如何在R中为tableGrob自定义特定的列?

来自分类Dev

为在 VB.Net 中启动的进程提供自定义名称

来自分类Dev

如何在Wordpress中为TinyMCE自定义fontsizeselect?

来自分类Dev

如何在 Spring Data JPA 中为自定义 @Query 提供和使用可变参数或可迭代参数?

来自分类Dev

Sequelize:如何在数据透视表中映射自定义属性

来自分类Dev

如何在Laravel表单验证错误消息中提供自定义字段名称

来自分类Dev

如何在PowerQuery中创建自定义索引列?

来自分类Dev

如何在SmartTable中添加自定义列?

来自分类Dev

如何在导航视图中为子菜单提供自定义背景色?

来自分类Dev

如何在Laravel身份验证中处理列的自定义名称,用户名和密码

来自分类Dev

如何在Laravel身份验证中处理列的自定义名称,用户名和密码

来自分类Dev

如何在JavaScript中知道事件名称是否为自定义?

来自分类Dev

如何使用故事板在自定义 uitableview 中为 5 个 UILabels 系列提供约束?

来自分类Dev

在 Netbeans 中为本机 dll 提供自定义路径

Related 相关文章

  1. 1

    如何在Django表单中为窗口小部件提供自定义名称

  2. 2

    如何在HTML中为<li>元素定义自定义名称?

  3. 3

    如何在蛋糕3中为Flash消息提供自定义的CSS类

  4. 4

    如何在TreeView中为工具提示提供MaxWidth(或自定义样式)

  5. 5

    如何在WPF中为Tab控件提供自定义形状?

  6. 6

    如何在C#中为dateTimePicker提供自定义格式

  7. 7

    如何在XAML文件中的mapControl上为ImageTilesLayer的DataProvider提供自定义数据?

  8. 8

    如何在Python中为字符串对象提供自定义方法?

  9. 9

    如何在蛋糕3中为Flash消息提供自定义的CSS类

  10. 10

    如何在android中为样式指定商品的自定义包装名称?

  11. 11

    如何在mybatis generator中为mapper文件和接口设置自定义名称、后缀?

  12. 12

    如何在自定义控件中为内部DataGrid定义列

  13. 13

    如何在JAXB中自定义属性名称?

  14. 14

    如何在Helmchart中设置自定义发布名称

  15. 15

    如何在Javers中自定义属性名称

  16. 16

    如何在R中为tableGrob自定义特定的列?

  17. 17

    为在 VB.Net 中启动的进程提供自定义名称

  18. 18

    如何在Wordpress中为TinyMCE自定义fontsizeselect?

  19. 19

    如何在 Spring Data JPA 中为自定义 @Query 提供和使用可变参数或可迭代参数?

  20. 20

    Sequelize:如何在数据透视表中映射自定义属性

  21. 21

    如何在Laravel表单验证错误消息中提供自定义字段名称

  22. 22

    如何在PowerQuery中创建自定义索引列?

  23. 23

    如何在SmartTable中添加自定义列?

  24. 24

    如何在导航视图中为子菜单提供自定义背景色?

  25. 25

    如何在Laravel身份验证中处理列的自定义名称,用户名和密码

  26. 26

    如何在Laravel身份验证中处理列的自定义名称,用户名和密码

  27. 27

    如何在JavaScript中知道事件名称是否为自定义?

  28. 28

    如何使用故事板在自定义 uitableview 中为 5 个 UILabels 系列提供约束?

  29. 29

    在 Netbeans 中为本机 dll 提供自定义路径

热门标签

归档