2 Spaltennamen und 2 Where Klauseln verbinden?
Maeggi
- datenbank
0 dedlfix
Moinsen,
ich möchte gerne, 2 Spaltennamen und 2 Where-Klauseln verbinden. So als wenn ich 2 einfache Abfragen hätte.
SELECT
SUM( `spalte_foo` ) AS X,
SUM( `spalte_foo` ) AS Y
FROM
tabelle
WHERE
spalte_foo = tisch OR spalte_foo = stuhl
spalte_foo = tisch soll an X übergeben werden
und
spalte_foo = stuhl soll an Y übergeben werden.
Mit 2 Abfragen würde das so aussehen:
Abfrage 1:
SELECT
SUM( `spalte_foo` ) AS X
FROM
tabelle
WHERE
spalte_foo = tisch
Abfrage 2:
SELECT
SUM( `spalte_foo` ) AS Y
FROM
tabelle
WHERE
spalte_foo = stuhl
Ich hoffe, das ist einigermaßen verständlich.
Vielen Dank
Tach!
ich möchte gerne, 2 Spaltennamen und 2 Where-Klauseln verbinden. So als wenn ich 2 einfache Abfragen hätte.
Warum möchtest du die Ergebnisse spaltenorientiert haben? Alle Daten liegen zeilenorientiert vor. Sie "um 90° zu drehen" ist möglich, aber umständlich. Eine Möglichkeit wären zwei Subquerys, für jedes Ergebnis eine. SELECT (SELECT ...) X, (SELECT ...) Y
SELECT
SUM(
spalte_foo
) AS X,
SUM(spalte_foo
) AS Y
FROM
tabelle
WHERE
spalte_foo = tisch OR spalte_foo = stuhl
Ich würde das wohl eher mit Gruppierung lösen.
~~~sql
SELECT spalte_foo, SUM( `spalte_foo` ) AS sum
FROM tabelle
WHERE spalte_foo IN ('tisch', 'stuhl')
GROUP BY spalte_foo
dedlfix.