SQL-Abfrage min und max (in WHERE-Bedingung?)?

2 Antworten

WHERE preis>=10000 AND preis <= 15000

oder

WHERE preis BETWEEN 10000 AND 15000

----

SELECT Model FROM ... WHERE ps=(SELECT MAX(ps) FROM ...)

Da das MAX als Aggregatfunktion eine Spalte zusammenfasst, darf das nicht direkt im WHERE stehe, soweit ich weiss. Es braucht dafür das Subselect.

Woher ich das weiß:Studium / Ausbildung – Informatiker
schwarzer95er 
Fragesteller
 06.12.2020, 10:37

Danke für deine Antwort!

und wie wäre das, bei dieser Aufgabe: h) Welches Modell hat die meisten PS?

oder i) Wie lautet das Baujahr des ältesten Autos?

0
iQa1x  06.12.2020, 12:54
@schwarzer95er

Was meinst du, was die 2. Abfrage mit dem Subselect oben liefert ? Für das Baujahr braucht es kein Subselect, da kannst du einfach select min(baujahr) from... machen, weil du nach der gleichen Spalte fragst.

0
Woher ich das weiß:Studium / Ausbildung – Elektronik studiert, Abschluss als Dipl.-Ing.
schwarzer95er 
Fragesteller
 05.12.2020, 12:41

das hat mir leider nicht geholfen :(

0
odine  05.12.2020, 12:55
@schwarzer95er

Du kannst z.B. fragen:

select max(PS), Modell from gebrauchtwagen

oder

SELECT * FROM gebrauchtwagen WHERE PS = (SELECT max(PS) FROM gebrauchtwagen)

1