Browse Source

MAX in WHERE not possible

You cannot use MAX() in a WHERE clause, instead use a subquery.

The ORDER BY is also unneeded, because we only select the maximum. So what to order, there is only one number (even if multiple entries with the same number).
Stefan Koch 12 years ago
parent
commit
097d360423
1 changed files with 1 additions and 2 deletions
  1. 1 2
      documents/musterloesung-db-klausur-b/d3e.sql

+ 1 - 2
documents/musterloesung-db-klausur-b/d3e.sql

@@ -1,5 +1,4 @@
 SELECT berater_id, name, anzahl
 SELECT berater_id, name, anzahl
     FROM Beratungsanzahl
     FROM Beratungsanzahl
     JOIN Berater ON Berater.berater_id = Beratungsanzahl.berater_id
     JOIN Berater ON Berater.berater_id = Beratungsanzahl.berater_id
-    WHERE anzahl = MAX(anzahl)
-    ORDER BY anzahl DESC
+    WHERE anzahl = (SELECT MAX(anzahl) FROM Beratungsanzahl)