I don't understand the error message generated by the following
schema/query:

    CREATE TABLE x(
        id integer
    );

    CREATE TABLE y(
        id integer
    );

    CREATE TABLE y_sequence (
        seq INTEGER PRIMARY KEY AUTOINCREMENT
    );


    WITH
        x
    AS
        (SELECT
            0 AS name,
            0 as rows

          UNION ALL
            
        SELECT
            'sqlite_sequence' AS "name",
            COUNT(*) AS rows
        FROM
            sqlite_sequence

          UNION ALL
            
        SELECT
            'y_sequence' AS "name",
            COUNT(*) AS rows
        FROM
            y_sequence

          UNION ALL
            
        SELECT
            'y' AS "name",
            COUNT(*) AS rows
        FROM
            y

          UNION ALL
            
        SELECT
            'x' AS "name",
            COUNT(*) AS rows
        FROM
            x
        )
    SELECT
        sm.name AS name,
        x.rows AS rows,
        SUM(CASE
            WHEN
                sm2.type="index"
            THEN
                1
            ELSE
                0
        END) AS "indexes",
        SUM(CASE
            WHEN
                sm2.type="trigger"
            THEN
                1
            ELSE
                0
        END) AS "triggers",
        SUM(CASE
            WHEN
                sm2.type="trigger" AND sm2.sql LIKE "%BEFORE INSERT%"
            THEN
                1
            ELSE
                0
        END) AS "bi",
        SUM(CASE
            WHEN
                sm2.type="trigger" AND sm2.sql LIKE "%AFTER INSERT%"
            THEN
                1
            ELSE
                0
        END) AS "ai",
        SUM(CASE
            WHEN
                sm2.type="trigger" AND sm2.sql LIKE "%BEFORE UPDATE%"
            THEN
                1
            ELSE
                0
        END) AS "bu",
        SUM(CASE
            WHEN
                sm2.type="trigger" AND sm2.sql LIKE
                        "%AFTER UPDATE%"
            THEN
                1
            ELSE
                0
        END) AS "au",
        SUM(CASE
            WHEN
                sm2.type="trigger" AND sm2.sql LIKE "%BEFORE DELETE%"
            THEN
                1
            ELSE
                0
        END) AS "bd",
        SUM(CASE
            WHEN
                sm2.type="trigger" AND sm2.sql LIKE "%AFTER DELETE%"
            THEN
                1
            ELSE
                0
        END) AS "ad"
    FROM
        sqlite_master sm
      LEFT JOIN
        sqlite_master sm2
      ON
        sm2.tbl_name = sm.tbl_name
      LEFT JOIN
        x
      ON
        x.name = sm.tbl_name
    WHERE
        sm.tbl_name NOT LIKE ? AND sm.type = ?
    GROUP BY
        sm.name
    ORDER BY
        sm.name
    ;

    DBD::SQLite::db prepare failed: recursive aggregate queries not supported 
at /usr/lib/perl5/site_perl/5.22/DBIx/ThinSQL.pm line 250.


I don't quite see where the recursive aggregate is. Can anyone
enlighten me?

-- 
Mark Lawrence
_______________________________________________
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to