Lime
frisch fruchtig
Hallo da draußen,
ich hab ein ziemliches Problem und bin mit meinem Latein auch relativ am Ende... Mysql ist halt doch sehr viel weitläufiger wie ich es kenne.
Derzeit habe ich eine Mysql-Abfrage, die mir alle Benutzer aus einer Benutzerliste gibt (wo Status == 1 ... bedeutet soviel wie "noch aktiv"), die noch KEINEN eintrag in einer "Verknüpfungstabelle" haben... (nur einem bestimmten Event zugeschrieben, deswegen die INNER JOINS)
Was ich jetzt haben möchte, ist eine Abfrage, die mir sowohl alle Benutzer liefert die noch keinen Eintrag haben, aber auch die Benutzer, die nicht genug Dienst haben.
Es gibt 50% und 100% Dienste (theoretisch auch andere, aber lassen wir es mal so).
Der "Wert" eines Dienstes liegt bei intern_events_uucat als Spalte "wert", ohne %-Zeichen.
Mein Versuch war einfach bei der inneren Abfrage ein
anzuhängen, aber das funktioniert nicht. Vielleicht weil es falsch formatiert ist, weis ich nicht. Hab da nicht so viel Erfahrung mit dieser Funktion.
Wär klasse wenn mir jemand helfen könnte... Soll mir einfach nur die Benutzer ohne, bzw. die mit zu wenig (unter 100% gesamt) ausgeben.
Gruß, Lime
ich hab ein ziemliches Problem und bin mit meinem Latein auch relativ am Ende... Mysql ist halt doch sehr viel weitläufiger wie ich es kenne.
Derzeit habe ich eine Mysql-Abfrage, die mir alle Benutzer aus einer Benutzerliste gibt (wo Status == 1 ... bedeutet soviel wie "noch aktiv"), die noch KEINEN eintrag in einer "Verknüpfungstabelle" haben... (nur einem bestimmten Event zugeschrieben, deswegen die INNER JOINS)
Code:
SELECT *
FROM intern_user
WHERE
(
id NOT IN
(
SELECT a.userID
FROM intern_dienstplan AS a
INNER JOIN intern_events_uucat AS b ON a.uucatID=b.id
INNER JOIN intern_events_ucat as c ON b.ucatID=c.id
INNER JOIN intern_events_cat AS d ON c.catID=d.id
WHERE d.eventID = '".$_POST['eventid']."'
)
)
AND status='1'
Was ich jetzt haben möchte, ist eine Abfrage, die mir sowohl alle Benutzer liefert die noch keinen Eintrag haben, aber auch die Benutzer, die nicht genug Dienst haben.
Es gibt 50% und 100% Dienste (theoretisch auch andere, aber lassen wir es mal so).
Der "Wert" eines Dienstes liegt bei intern_events_uucat als Spalte "wert", ohne %-Zeichen.
Mein Versuch war einfach bei der inneren Abfrage ein
Code:
AND SUM(b.wert)=100
Wär klasse wenn mir jemand helfen könnte... Soll mir einfach nur die Benutzer ohne, bzw. die mit zu wenig (unter 100% gesamt) ausgeben.
Gruß, Lime