MySQL ORDER BY
Joah.
- datenbank
Hallo,
ist grundsätzlich so etwas in der Art möglich:
Beispiel ist stark vereinfacht, bitte nicht wundern und auch keine Kommentare hierzu, es geht nur um die ORDER BY Syntax):
Tabele auto:
autoid, marke, name des autos
Suche nach Autos mit Klimaanlage würde beispielsweise 30 Autos finden, davon 15 der Marke BMW, 8 der Marke FIAT und so weiter.
In einem ersten Statement hole ich mir mit SELECT COUNT(*) as anzahl FROM autos WHERE klimaanlage=1 GROUP BY marke ORDER BY anzahl DESC die Autos.
SELECT * FROM auto
WHERE klimaanlage=1 ORDER BY marke "bmw, fiat, rest).
Hat da jemand Erfahrung?
Danke für eure Hilfe.
Gruß
Joah.
In einem ersten Statement hole ich mir mit SELECT COUNT(*) as anzahl FROM autos WHERE klimaanlage=1 GROUP BY marke ORDER BY anzahl DESC die Autos.
SELECT * FROM
auto
WHERE klimaanlage=1 ORDER BY marke "bmw, fiat, rest).
Warum machst du das nicht bei der ersten Abfrage?
Müßte dch eigentlich so gehen:
SELECT marke, COUNT(marke) as anzahl FROM autos WHERE klimaanlage=1 GROUP BY marke ORDER BY marke ASC
Struppi.
Hi!
SELECT * FROM
auto
WHERE klimaanlage=1 ORDER BY marke "bmw, fiat, rest).Warum machst du das nicht bei der ersten Abfrage?
Müßte dch eigentlich so gehen:
SELECT marke, COUNT(marke) as anzahl FROM autos WHERE klimaanlage=1 GROUP BY marke ORDER BY marke ASC
Damit bekomme ich welche Marke wieviele Resultate hat. Ich möchte aber alle Resultate die auf die Kriterien zutreffen, sortiert nach der Anzahl pro Marke....
Joah.
hi,
SELECT marke, COUNT(marke) as anzahl FROM autos WHERE klimaanlage=1 GROUP BY marke ORDER BY marke ASC
Damit bekomme ich welche Marke wieviele Resultate hat. Ich möchte aber alle Resultate die auf die Kriterien zutreffen, sortiert nach der Anzahl pro Marke....
das wirst du m.E. nicht mit einer query hinbekommen.
GROUP BY sorgt ja dafür, dass dir von jeder marke nur noch ein datensatz geliefert wird.
wäre in diesem falle evtl. performanter und auch einfacher, das ganze scriptseitig zu machen.
daten in ein array packen, zählen, sortieren.
gruß,
wahsaga
Damit bekomme ich welche Marke wieviele Resultate hat. Ich möchte aber alle Resultate die auf die Kriterien zutreffen, sortiert nach der Anzahl pro Marke....
Mir ist nach nochmaligen durchlesen der orginal Frage nicht mehr klar was du eigentlich willst. Da ich auch keine eindeutige Frage erkennen kann.
Struppi.
Hi Joah,
SELECT * FROM
auto
WHERE klimaanlage=1 ORDER BY marke "bmw, fiat, rest)
http://aktuell.de.selfhtml.org/tippstricks/datenbanken/sqlsort/
Gruß, Marian
yo,
welche Version von mysql kommt den zum einsatz, kann diese etwa unterabfragen bearbeiten ?
Ilja