guenter47
Benutzer
- Beiträge
- 7
Hallo,
ich bin neu hier und seit Tagen mit einer Abfrage am verzweifeln.
Vielleicht kann mir jemand auf die Sprünge helfen.
Das ist meine Tabell: 'members':
mem_id ! mem_rol_id ! mem_usr_id ! mem_end (date)
1118 __!____ 2 _____!___ 221 ____! 2016-02-29
1119 __!___ 33 _____!___ 221 ____! 2015-03-21
940 ___!___ 37 _____!___ 220 ____! 9999-12-31
925 ___!____ 2 _____!___ 220 ____! 2016-02-12
926 ___!___ 20 _____!___ 220 ____! 9999-12-31
1073 __!___ 55 _____!___ 220 ____! 9999-12-31
1072 __!___ 55 _____!___ 219 ____! 9999-12-31
939 ___!___ 37 _____!___ 219 ____! 9999-12-31
924 ___!___ 20 _____!___ 219 ____! 9999-12-31
923 ___!____ 2 _____!___ 219 ____! 2015-08-23
932 ___!___ 36 _____!___ 218 ____! 9999-12-31
Zur Erklärung: Jeder User (mem_usr_id) hat eine oder mehrere eindeutige Rollen (mem_rol_id) mit einem Datum (mem_end).
Das Datumsfeld kann nur entweder '9999-12-31' (bedeutet endloses Datum) oder ein kleineres Datum (= Ende-Datum) enthalten.
Ich möchte nun alle User filtern, die in keinem Datensatz das Datum '9999-12-31' stehen haben.
Die Abfrage:
SELECT mem_usr_id, COUNT(mem_end) as c
FROM `members`
WHERE (SELECT COUNT(*) FROM members WHERE mem_end = '9999-12-31' ) = 0
Liefert immer nur ein leeres Ergebnis.
Erwarten möchte ich das Ergebnis:
mem_user_id ! c
___ 221 ____! 2
Was mach ich falsch?
Danke für Eure Hilfe,
Gruß Günter
ich bin neu hier und seit Tagen mit einer Abfrage am verzweifeln.
Vielleicht kann mir jemand auf die Sprünge helfen.
Das ist meine Tabell: 'members':
mem_id ! mem_rol_id ! mem_usr_id ! mem_end (date)
1118 __!____ 2 _____!___ 221 ____! 2016-02-29
1119 __!___ 33 _____!___ 221 ____! 2015-03-21
940 ___!___ 37 _____!___ 220 ____! 9999-12-31
925 ___!____ 2 _____!___ 220 ____! 2016-02-12
926 ___!___ 20 _____!___ 220 ____! 9999-12-31
1073 __!___ 55 _____!___ 220 ____! 9999-12-31
1072 __!___ 55 _____!___ 219 ____! 9999-12-31
939 ___!___ 37 _____!___ 219 ____! 9999-12-31
924 ___!___ 20 _____!___ 219 ____! 9999-12-31
923 ___!____ 2 _____!___ 219 ____! 2015-08-23
932 ___!___ 36 _____!___ 218 ____! 9999-12-31
Zur Erklärung: Jeder User (mem_usr_id) hat eine oder mehrere eindeutige Rollen (mem_rol_id) mit einem Datum (mem_end).
Das Datumsfeld kann nur entweder '9999-12-31' (bedeutet endloses Datum) oder ein kleineres Datum (= Ende-Datum) enthalten.
Ich möchte nun alle User filtern, die in keinem Datensatz das Datum '9999-12-31' stehen haben.
Die Abfrage:
SELECT mem_usr_id, COUNT(mem_end) as c
FROM `members`
WHERE (SELECT COUNT(*) FROM members WHERE mem_end = '9999-12-31' ) = 0
Liefert immer nur ein leeres Ergebnis.
Erwarten möchte ich das Ergebnis:
mem_user_id ! c
___ 221 ____! 2
Was mach ich falsch?
Danke für Eure Hilfe,
Gruß Günter
Zuletzt bearbeitet: