sql >> データベース >  >> RDS >> Sqlserver

SQL Server PIVOTはおそらく?

    SQL Server 2005を使用しているため、コードは次のとおりです。

    DECLARE @cols VARCHAR(1000)
    DECLARE @sqlquery VARCHAR(2000)
    
    SELECT  @cols = STUFF(( SELECT distinct  ',' + QuoteName([Name1])
                            FROM myTable FOR XML PATH('') ), 1, 1, '') 
    
    
    SET @sqlquery = 'SELECT * FROM
          (SELECT Name2, Name1, Value
           FROM myTable ) base
           PIVOT (Sum(Value) FOR [Name1]
           IN (' + @cols + ')) AS finalpivot'
    
    EXECUTE ( @sqlquery )
    

    これは、ステータスがいくつあっても機能します。 PIVOTを使用してクエリを動的にアセンブルします 。動的列を使用してPIVOTを実行できる唯一の方法は、クエリを動的にアセンブルすることです。これは、SQLServerで実行できます。

    その他の例:

    • T-SQLのピボットデータ
    • SQL Serverを使用して単一のテーブルに結合してサマリーを作成するにはどうすればよいですか?
    • https://stackoverflow.com/q/8248059/570191


    1. ClusterControl 1.7.5の発表:PostgreSQL12およびMongoDB4.2の高度なクラスターメンテナンスとサポート

    2. (英語)Oracle Database 19c Pre-BuiltDeveloperVMの使用方法

    3. 公式のPostgreSQLDockerイメージの構成ファイルをカスタマイズするにはどうすればよいですか?

    4. SQLServerID列の値は1ではなく0から始まります