Der er endnu ingen god måde at gøre dette på i BigQuery, men du kan gøre det efter nedenstående idé
Trin 1
Kør nedenstående forespørgsel
VÆLG 'VÆLG [gruppe], ' + GROUP_CONCAT_UNQUOTED( 'SUM(HVIS([dato] ="' + [dato] + '", værdi, NULL)) som [d_' + REPLACE([dato ], '/', '_') + ']' ) + ' FRA dit bord GRUPPE EFTER [gruppe] BESTIL EFTER [gruppe]'FRA ( VÆLG [dato] FRA dit bord GRUPPE EFTER [dato] BESTIL EFTER [dato])
Som et resultat - vil du få en streng som nedenfor (den er formateret nedenfor for læsbarhedens skyld)
VÆLG [gruppe], SUM(HVIS([dato] ="dato1", værdi, NULL)) SOM [d_dato1], SUM(HVIS([dato] ="dato2", værdi, NULL)) SOM [d_date2] FRA DinTabel GRUPPE EFTER [gruppe] BESTIL EFTER [gruppe]
Trin 2
Bare kør ovenstående sammensatte forespørgsel
Resultatet bliver som nedenfor
gruppe d_date1 d_date2 gruppe1 15 30
Bemærkning 1 :Trin 1 er nyttigt, hvis du har mange grupper, der skal dreje for meget manuelt arbejde. I dette tilfælde - Trin 1 hjælper dig med at generere din forespørgsel
Bemærkning 2 :Disse trin implementeres nemt i enhver klient efter eget valg, eller du kan bare køre dem i BigQuery Web UI
Du kan se mere om pivotering i mine andre indlæg.
Hvordan skalerer man pivoting i BigQuery?
Bemærk venligst – der er en begrænsning på 10.000 kolonner pr. tabel - så du er begrænset med 10.000 organisationer.
Du kan også se nedenfor som forenklede eksempler (hvis ovenstående er for kompleks/ordbundet):
Hvordan transponeres rækker til kolonner med store mængder af data i BigQuery/SQL?
Hvordan opretter man dummy-variable kolonner for tusindvis af kategorier i Google BigQuery?
Pivot gentagne felter i BigQuery