[Blends-commit] [SCM] website branch, master, updated. 193d2867814d8a54c22082705237e67a214ed2cd

Andreas Tille tille at debian.org
Sun Jun 2 19:56:09 UTC 2013


The following commit has been merged in the master branch:
commit 53906849d69a413a4c272bfeb3e1fb1601f7af9b
Author: Andreas Tille <tille at debian.org>
Date:   Fri May 31 15:00:57 2013 +0200

    Join different queries together and merge them in a thermometer like single table

diff --git a/misc/sql/gis-thermometer.sh b/misc/sql/gis-thermometer.sh
index 6e41d65..b329334 100755
--- a/misc/sql/gis-thermometer.sh
+++ b/misc/sql/gis-thermometer.sh
@@ -5,39 +5,43 @@ if [ $# -lt 1 ] ; then
     exit
 fi
 
-psql udd >$1.stable <<EOT
-SELECT DISTINCT p.source, strip_binary_upload(MAX(s.version)) AS stableversion
-  FROM packages p
-  JOIN releases r ON p.release = r.release
-  JOIN blends_dependencies b ON b.package = p.package
-  -- make sure we get the right source version that does not necessarily match binary version
-  JOIN sources s ON p.source = s.source AND p.release = s.release
-  WHERE b.blend = '$1' AND r.role = 'stable' AND p.distribution = 'debian'
-  GROUP BY p.source
-  ORDER BY p.source;
-EOT
+# Note: The query below does not regard packages not available under a source
+# name in stable or testing that is different from the name in unstable
 
-psql udd >$1.testing <<EOT
-SELECT DISTINCT p.source, strip_binary_upload(MAX(s.version)) AS testingversion
-  FROM packages p
-  JOIN releases r ON p.release = r.release
-  JOIN blends_dependencies b ON b.package = p.package
-  -- make sure we get the right source version that does not necessarily match binary version
-  JOIN sources s ON p.source = s.source AND p.release = s.release
-  WHERE b.blend = '$1' AND r.role = 'testing' AND p.distribution = 'debian'
-  GROUP BY p.source
-  ORDER BY p.source;
-EOT
+psql udd >$1.out <<EOT
+SELECT unstable.source, stable.version AS stable, testing.version AS testing, unstable.version AS unstable FROM (
+  SELECT DISTINCT p.source, strip_binary_upload(MAX(s.version)) AS version
+    FROM packages p
+    JOIN releases r ON p.release = r.release
+    JOIN blends_dependencies b ON b.package = p.package
+    -- make sure we get the right source version that does not necessarily match binary version
+    JOIN sources s ON p.source = s.source AND p.release = s.release
+    WHERE b.blend = '$1' AND r.role = 'unstable' AND p.distribution = 'debian'
+    GROUP BY p.source
+    ORDER BY p.source
+  ) unstable
+ LEFT OUTER JOIN (
+  SELECT DISTINCT p.source, strip_binary_upload(MAX(s.version)) AS version
+    FROM packages p
+    JOIN releases r ON p.release = r.release
+    JOIN blends_dependencies b ON b.package = p.package
+    -- make sure we get the right source version that does not necessarily match binary version
+    JOIN sources s ON p.source = s.source AND p.release = s.release
+    WHERE b.blend = '$1' AND r.role = 'testing' AND p.distribution = 'debian'
+    GROUP BY p.source
+    ORDER BY p.source
+  ) testing ON unstable.source = testing.source
+ LEFT OUTER JOIN (
+  SELECT DISTINCT p.source, strip_binary_upload(MAX(s.version)) AS version
+    FROM packages p
+    JOIN releases r ON p.release = r.release
+    JOIN blends_dependencies b ON b.package = p.package
+    -- make sure we get the right source version that does not necessarily match binary version
+    JOIN sources s ON p.source = s.source AND p.release = s.release
+    WHERE b.blend = '$1' AND r.role = 'stable' AND p.distribution = 'debian'
+    GROUP BY p.source
+    ORDER BY p.source
+  ) stable ON unstable.source = stable.source
+;
 
-psql udd >$1.unstable <<EOT
-SELECT DISTINCT p.source, strip_binary_upload(MAX(s.version)) AS unstableversion
-  FROM packages p
-  JOIN releases r ON p.release = r.release
-  JOIN blends_dependencies b ON b.package = p.package
-  -- make sure we get the right source version that does not necessarily match binary version
-  JOIN sources s ON p.source = s.source AND p.release = s.release
-  WHERE b.blend = '$1' AND r.role = 'unstable' AND p.distribution = 'debian'
-  GROUP BY p.source
-  ORDER BY p.source;
 EOT
-

-- 
Static and dynamic websites for Debian Pure Blends



More information about the Blends-commit mailing list