phpbar.de logo

Mailinglisten-Archive

[php] Problem mit MySql-Abfrage

[php] Problem mit MySql-Abfrage

Norbert Pfeiffer php_(at)_phpcenter.de
Wed, 12 Sep 2001 14:16:58 +0200


Hi Jochen,

> habe gerade ein Brett vor dem Kopf:
willkommen im Club... ;-)

> Habe zwei Tabellen
hier schlug der automatische Zeilenumbruch zu,
also kann man nur 'vermuten', was wo hin gehoert :-((

Schicke Dir also mein Paradebeispiel fuer 'suchen nach nix'.
Die Kommentare im Query sind hoffentlich ausreichend... ;-)

SELECT
persons.per_id,
# eine ID braucht man immer
persons.nnam,
# da sollte ein Name drinstehen
COUNT(orders.per_id = persons.per_id) AS anzl
# und hier, wie oft der Typ was geordert hat
FROM
persons
# logo oder ?
LEFT JOIN
# wichtig, verhindert ein Kreuzprodukt
orders
# auch logo ;-)
ON
orders.per_id = persons.per_id
# definiert die Zuordnung
GROUP BY
persons.per_id
# sinnlos aber fuer COUNT unabdingbar
ORDER BY
anzl DESC, persons.nnam
# damit die 'guten' oben stehen
LIMIT 11
# sonst wird das alles zu lang ;-)
;

SELECT
persons.per_id,
persons.nnam,
COUNT(orders.per_id = persons.per_id) AS anzl
FROM
persons
LEFT JOIN
orders
ON
orders.per_id = persons.per_id
WHERE
orders.per_id IS NULL
# hier werden die NULLEN gefiltert
GROUP BY
persons.per_id
ORDER BY
anzl DESC, persons.nnam
LIMIT 11
;


m. b. G. Norbert
_____________________
normal:  02292-681769
Notruf:  0177-2373368
---------------------
e.o.m.




php::bar PHP Wiki   -   Listenarchive