J'ai une table de base de données Sql semblable au suivant:Comment faire pivoter les lignes en colonnes (pivotantes sur mesure)
Day Period Subject
Mon 1 Ch
Mon 2 Ph
Mon 3 Mth
Mon 4 CS
Mon 5 Lab1
Mon 6 Lab2
Mon 7 Lab3
Tue 1 Ph
Tue 2 Ele
Tue 3 Hu
Tue 4 Ph
Tue 5 En
Tue 6 CS2
Tue 7 Mth
Je voudrais qu'il affiche comme suit: Type de tableau croisé ou pivot
Day P1 P2 P3 P4 P5 P6 P7
Mon Ch Ph Mth CS2 Lab1 Lab2 Lab3
Tue Ph Ele Hu Ph En CS2 Mth
Quel serait le moyen idéal pour le faire? Quelqu'un peut-il me montrer le code Sql s'il vous plait?
+1: Vous étiez plus rapidement et ont ORDER BY . Donc, je vais juste ajouter: Comme vous pouvez le voir, les colonnes dynamiques nécessiteront l'utilisation de SQL dynamique. Il existe une syntaxe ANSI PIVOT, mais elle est uniquement prise en charge sur SQL Server 2005+ et Oracle 11g. –
Je le fais actuellement dans SQLite, mais il semble que ce soit une opération assez intensive. Est-ce que quelqu'un sait s'il existe une solution plus performante? – EnemyBagJones
Je ne crois pas que SQLite ait une fonction de pivot intégrée, donc c'est probablement ce que vous devez faire. Cependant, je n'utilise pas SQLite, alors peut-être que quelqu'un ayant plus d'expérience avec ce fournisseur SQL spécifique a une meilleure idée. –