![]() |
Anzeige:
|
|
|||||||
| PHP/MySQL Alles rund um die Programmiersprache PHP sowie MySQL. |
|
![]() |
|
|
LinkBack | Themen-Optionen | Ansicht |
|
|
#1 (Direktlink) |
|
Gast
Beiträge: n/a
|
Hallo,
ich habe folgendes Problem. Ich habe eine Zwischentabelle in der Gruppenids und Userids sind. Ich möchte jetz z.b. alle User die nicht in der Gruppe 3 + 4 sind. Wenn ich SELECT * From Tabelle where gruppenid != '3' AND gruppenid !='4' als Query nehme dann bekomme ich trotzdem User die in den Gruppen sind denn für den Datensatz Userid: 1 Gruppe: 5 tifft ja die Anweisung nicht zu (dabei steht z.b. 2 Datensätze weiter dass er z.B. in Gruppe 3 ist). Ich hoffe ihr habt mein Problem verstanden und könnt mir eine funktionierende Beispielabfrage posten. Danke Trubadix |
|
|
|
|
#2 (Direktlink) |
|
War schon mal da
![]() Registriert seit: 19.02.2007
Beiträge: 38
|
moin, also wenn ich dich richtig verstanden habe, dann willst du NUR DIE Usernamen ausgeben die keinesfalls in groupid 3 oder 4 z.B. enthalten sind? Also wenn user A in Groupid 3 enthalten ist aber auch in Groupid 7 soll dieser dann NICHT mit ausgegeben werden da er ja in 3 enthalten ist.
Wenn ich das so richtig verstanden habe sollte dir untiges Beispiel weiterhelfen Code:
SELECT name FROM `test` WHERE userid not in ( SELECT `userid` FROM `test` WHERE groupid in(3,4) ) ORDER BY name ASC Hier die Finale Fassung: Code:
SELECT DISTINCT name FROM `test` WHERE userid not in ( SELECT `userid` FROM `test` WHERE groupid in(3,4) ) ORDER BY name ASC |
|
|
|
|
|
#3 (Direktlink) |
|
Gast
Beiträge: n/a
|
Sieht gut aus und klingt auch logisch und mein Problem hast du richtig erkannt.
Ohne es ausprobiert zu haben nenn ich dich schonmal SQL-Gott und sag Danke! (Falls es wieder erwarten nicht klappen sollte mach ich hier nochmal ein Fass auf..) |
|
![]() |
|
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
|
|