Tengo una tabla de base de datos SQL similar al siguiente:Cómo pivotar filas en columnas (pivotantes medida)
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
me gustaría que aparece de la siguiente manera: Tipo de tabla de referencias cruzadas o de pivote
Day P1 P2 P3 P4 P5 P6 P7
Mon Ch Ph Mth CS2 Lab1 Lab2 Lab3
Tue Ph Ele Hu Ph En CS2 Mth
¿Cuál sería la forma ideal de hacerlo? ¿Puede alguien mostrarme el código Sql por favor?
+1: Usted fue más rápido y tener el ORDER BY . Así que solo agregaré: como puede ver, las columnas dinámicas requerirán el uso de SQL dinámico. Existe la sintaxis ANSI PIVOT, pero solo es compatible con SQL Server 2005+ y Oracle 11g. –
Actualmente estoy haciendo esto en SQLite, pero parece ser una operación bastante intensiva. ¿Alguien sabe si hay una solución más eficiente? – EnemyBagJones
No creo que SQLite tenga ningún tipo de función de pivote integrada, por lo que es probable que esto sea lo que le impida. Aunque no uso SQLite, tal vez alguien con más experiencia con ese proveedor de SQL específico tenga una mejor idea. –