Abfrage möglich?
fips
- php
Hallo,
ich habe ein Problem folgende Abfrage durchzuführen:
tabellen (struktur läßt sich nicht ändern)
kunden:
id name alter ort
1 stefan 20 münchen
2 martin 22 berlin
3 hans 20 hamburg
4 herbert 21 berlin
...
gekaufte artikel:
artikel kundenid
1 2
1 2
2 3
2 1
3 4
...
die abfrage wäre z.B.
1. wieviele Artikel wurden von ort gekauft
münchen 1
berlin 3
hamburg 1
2. wieviele Artikel wurden von alter gekauft
20 2
21 1
22 2
ist das möglich?
ich arbeite schon lange dran...
beste grüsse
fips
SELECT count(*) AS result FROM kunden INNER JOIN gekaufte_artikel ON kunden.id = gekaufte_artikel.kundenid WHERE kunden.ort = 'berlin';
SELECT count(*) AS result FROM kunden INNER JOIN gekaufte_artikel ON kunden.id = gekaufte_artikel.kundenid WHERE kunden.alter = 20;
Wenn ich mich nicht irre, sollten diese Abfragen den Zweck erfüllen, habs aber nicht getestet.
Wenn du das in die Variable $row lädst, hast du das Ergebnis dann in $row['result']. (bzw. dem Namen, der nach AS folgt.)
Farewell.
SELECT count(*) AS result FROM kunden INNER JOIN gekaufte_artikel ON kunden.id = gekaufte_artikel.kundenid WHERE kunden.ort = 'berlin';
SELECT count(*) AS result FROM kunden INNER JOIN gekaufte_artikel ON kunden.id = gekaufte_artikel.kundenid WHERE kunden.alter = 20;
Danke erstmal, aber ich möchte nicht "berlin" angeben, sondern eine Tabelle mit allen Ortsnamen als Ergebnis.
Wie geht das?
Grüsse
fips
Hallo fips,
SELECT count(*) AS result FROM kunden INNER JOIN gekaufte_artikel ON kunden.id = gekaufte_artikel.kundenid WHERE kunden.ort = 'berlin';
Danke erstmal, aber ich möchte nicht "berlin" angeben, sondern eine Tabelle mit allen Ortsnamen als Ergebnis.
Verd****, LazyWolf hat Dir schon jede Menge Anhaltspunkte gegeben!
Ich füge nur hinzu:
Schau mal in der Syntax von SELECT nach!
Schau bei Aggregatsfunktionen nach!
Schau bei JOIN nach!
Schau bei GROUP BY nach!
*RTFM*!
Ich weiß, es waren viel zu viele Ausrufezeichen.
Gruss,
Vinzenz