Hallo,
ich habe folgendes Problem und hoffe auf Eure Hilfe:
Ich habe eine Tabelle, in der Mitarbeiter und Aufträge verwaltet werden.
Für jeden Mitarbeiter einesAuftrages gibt es eine Zeile mit Auftragsnummer und Mitarbeiternummer. Wenn also an Auftrag 2 Mitarbeiter 5 und 7 arbeiten sollen, gibt es 2 Zeilen für diesen Auftrag.
Falls einem Auftrag noch kein Mitarbeiter zugeodnet wurde, dies aber nooch geschehen soll, wird die Mitarbeiternummer mit 0 angegeben, bis eine richtige Nummer angegeben wurde.
Ich möchte nun abfrage, wieviele Mitarbeiter dem Auftrag "2" zugewiesen werden sollen (also wieviele Zeilen mit Auftragsnummer 2 gibt es) und bei wieviele Mitarbeiter schon zugewiesen wurden (also Mitarbeiternummer > 0).
Zusätzlich noch das Datum aber das stellt nicht das Problem dar.
Mein Ansatz:
SELECT count(ID ) AS number, von, bis
FROM `auftraege`
WHERE `Auftrags_id` = 2
GROUP BY von, bis
UNION
SELECT count(ID ) AS gebucht, von, bis
FROM `auftraege`
WHERE `Auftrags_id` = 2 AND mitarbeiter_id > 0
GROUP BY von, bis LIMIT 0 , 30
Dies zeigt mir aber leider den Wert gebucht nicht an?!?
Wo mache ich den Fehler?
Danke und Gruß,
Oliver
----
Modedit Gwendragon: Thread verschoben und Titel erweitert
----