Ilja: Nicht Datensätze sondern leere Felder eines Datensatzes zählen

Beitrag lesen

moin,

meistens ist das schwierigste den fragenden zu helfen, dass die beschreibung unvollständig ist, so auch in deinem falle. die abfrage selbst wird letzlich trivial sein. dafür brauchen wird aber sinnige beispieldaten und vor allem, welche ausgabe du bei genau deinen beispieldaten haben willst. deine beispieldaten und auch deine beschreibende ausgabe lassen zuviel raum für zweifelhafte interpretationen. du kannst deine sql versuche gerne aufzeigen, das ist aber meistens nicht wirklich erforderlich.

wie gesagt, geben deine beispiel leider nicht eindeutig hervor, was genau du haben willst. zum beispiel ist es für mich noch offen, ob von mehreren datensätzen aufsummieren willst (zum beispiel alle datensätze mit der gleichen projekt-id) oder ob es immer nur um einen datensatz geht, wo du die nicht leeren aufgaben und ok spalten aufaddieren willst.

noch ein paar hinweise von mir. mit leer meinst du bestimmt NULL werte und diese werden nicht mit !='' geprüft, sondern mit IS NOT NULL. des weiteren geht dein ansatz dass in der WHERE klausel lösen zu wollen, komplett in die falsche richtung. und zu guter letzt wirst du wohl auch keine IF/CASE verzweigung brauchen, man kann sich höchst wahrscheinlich eine eigenheit der aggregat-funktionen zu nutze machen. aber um dies alles mit gewissheit sagen zu können, liefer bitte sinnvolle beispieldaten mit der gewünschten ergebnismenge, so dass es keinen spielraum mehr für interpretationen gibt. dann bekommst du ohne viel aufwand eine lösung für dein problem per sql.

Ilja