Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment transposer des lignes en colonnes avec une grande quantité de données dans BigQuery/SQL ?

STEP #1

Dans la requête ci-dessous, remplacez yourTable avec le vrai nom de votre table et exécutez-la

SELECT 'SELECT CustomerID, ' + 
   GROUP_CONCAT_UNQUOTED(
      'MAX(IF(Feature = "' + STRING(Feature) + '", Value, NULL))'
   ) 
   + ' FROM yourTable GROUP BY CustomerID'
FROM (SELECT Feature FROM yourTable GROUP BY Feature) 

En conséquence, vous obtiendrez une chaîne à utiliser à l'étape suivante !

STEP #2

Prenez la chaîne que vous avez obtenue à l'étape 1 et exécutez-la simplement en tant que requête
La sortie est un Pivot que vous avez posé en question