[Collab-qa-commits] r1722 - udd/sql
Andreas Tille
tille at alioth.debian.org
Sat Mar 13 22:00:29 UTC 2010
Author: tille
Date: 2010-03-13 22:00:28 +0000 (Sat, 13 Mar 2010)
New Revision: 1722
Modified:
udd/sql/versions_archs_components.sql
Log:
Avoid temporary table
Modified: udd/sql/versions_archs_components.sql
===================================================================
--- udd/sql/versions_archs_components.sql 2010-03-13 09:25:57 UTC (rev 1721)
+++ udd/sql/versions_archs_components.sql 2010-03-13 22:00:28 UTC (rev 1722)
@@ -22,9 +22,9 @@
|| package || ''' GROUP BY component, version ORDER BY version) AS cv GROUP BY component;';
FOR r IN EXECUTE query LOOP
- query1 = /* -- DROP TABLE IF EXISTS tmpReleaseVersionArch ; */
- 'CREATE TEMPORARY TABLE tmpReleaseVersionArch AS
- SELECT release || CASE WHEN char_length(substring(distribution from ''-.*'')) > 0
+ query1 = 'SELECT release, version, array_to_string(array_sort(array_accum(arch)),'',''), CAST('''
+ || r.component || ''' AS text) AS component FROM
+ (SELECT release || CASE WHEN char_length(substring(distribution from ''-.*'')) > 0
THEN substring(distribution from ''-.*'')
ELSE '''' END AS release,
-- make *-volatile a "pseudo-release"
@@ -32,16 +32,11 @@
architecture AS arch, component
FROM packages
WHERE package = ''' || package || ''' AND component = ''' || r.component || '''
- GROUP BY architecture, version, release, distribution, component
- ;' ;
- EXECUTE query1;
- query1 = 'SELECT release, version, array_to_string(array_sort(array_accum(arch)),'',''), CAST('''
- || r.component || ''' AS text) AS component FROM tmpReleaseVersionArch
+ GROUP BY architecture, version, release, distribution, component) tmpReleaseVersionArch
GROUP BY release, version ORDER BY version;' ;
FOR q IN EXECUTE query1 LOOP
RETURN NEXT q;
END LOOP;
- DROP TABLE tmpReleaseVersionArch ;
END LOOP;
END; $$ LANGUAGE 'plpgsql';
More information about the Collab-qa-commits
mailing list