SQLite::VirtualTable::Pivot

* base_table        student subject    grade
                    ------- ---------- -----
                    Fred    reading    A
                    Fred    writing    B
                    Fred    arithmetic C
                    Mary    reading    B
                    Mary    writing    B
                    Mary    arithmetic C

CREATE VIRTUAL TABLE pivot_table USING perl ("SQLite::VirtualTable::Pivot","base_table");

* pivot_table
                    student reading writing arithmetic
                    ------- ------- ------- -------
                    Fred    A       B       C
                    Mary    B       B       C


/* By default three columns are pivot_row, pivot_column, pivot_value    */
/* Distinct values calculated per database session (creation/first use) */
/* Can handle joins transparently                                       */
/* Better performance for small results sets                            */