[Gfoss] SpatiaLite conteggio righe tabelle database
pigreco
pigrecoinfinito a gmail.com
Mar 30 Apr 2019 11:51:35 CEST
a.furieri wrote
> SELECT tbl_name,
> eval('SELECT count(*) FROM "' || tbl_name || '"') AS nro_righe
> FROM sqlite_master
> WHERE type = 'table' AND sql NOT LIKE 'CREATE VIRTUAL TABLE %'
> AND name NOT IN (SELECT f_table_name FROM geometry_columns)
> AND name NOT IN (SELECT 'idx_' || f_table_name || '_' ||
> f_geometry_column
> FROM geometry_columns WHERE spatial_index_enabled = 1)
> AND name NOT IN (SELECT 'idx_' || f_table_name || '_' ||
> f_geometry_column || '_node'
> FROM geometry_columns WHERE spatial_index_enabled = 1)
> AND name NOT IN (SELECT 'idx_' || f_table_name || '_' ||
> f_geometry_column || '_parent'
> FROM geometry_columns WHERE spatial_index_enabled = 1)
> AND name NOT IN (SELECT 'idx_' || f_table_name || '_' ||
> f_geometry_column || '_rowid'
> FROM geometry_columns WHERE spatial_index_enabled = 1)
> AND name NOT IN ('geometry_columns', 'geometry_columns_auth',
> 'geometry_columns_time')
> ORDER BY tbl_name;
>
> Note:
> ===========================
> 1. con queste modifiche filtra automaticamente qualsiasi
> SpatialIndex e tutte le VirtualTables
> 2. l'ultima lista (geometry_columns etc) va espansa fino
> a definire l'elenco completo di tutte le meta-tavole
> utilizzate internamente da SpatiaLite.
> lavoro noiosetto ma per nulla difficoltoso, basta solo
> un pizzico di pazienza.
> 3. non copre eventuali TopoGeometry, TopoNetworks e
> RasterCoverages, ma non credo che ti interessino.
> nal caso, il problema e' facilmente risolvibile
> ricalcando lo schema applicato agli Spatial Index;
> occorre fare una subquery sulla metatavola madre
> per ricavare tutti i nomi delle tavole figlie.
>
> ciao Sandro
Grazie per lo spunto e il tempo dedicatomi.
saluti
-----
https://pigrecoinfinito.wordpress.com/
--
Sent from: http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/
Maggiori informazioni sulla lista
Gfoss