sql >> Database teknologi >  >> RDS >> Mysql

MySQL pivottabel ved hjælp af java

Du kan bruge dynamisk SQL til at pivotere dynamisk som f.eks.

SET @sql = NULL;
SET @date = '2020-11-30';

SELECT GROUP_CONCAT(
             CONCAT(
                    'SUM(CASE WHEN Partners = "', Partners,'" THEN Amount ELSE 0 END ) AS'
                    ,Partners
                    )
       )
  INTO @sql
  FROM ( SELECT DISTINCT Partners FROM BPFinal WHERE Date = @date ) AS b;

SET @sql = CONCAT('SELECT Branch,',@sql,
                   ' FROM BPFinal
                    WHERE Date = "',@date,'"' 
                  ' GROUP BY Branch'); 
                  
PREPARE stmt FROM @sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt; 

Demo



  1. Sådan slettes identitetsegenskaber for en kolonne i SQL Server-tabel - SQL Server / T-SQL vejledning 44

  2. Lagring af specifikke dato-/tidsværdier for brugere i forskellige tidszoner

  3. Hvordan trunkerer du alle tabeller i en database ved hjælp af TSQL?

  4. Hvordan kan jeg låse en tabel ved læsning ved hjælp af Entity Framework?