NOT NULL ?
Q.
- datenbank
Hallo,
Worum es mir geht, ist, im weiteren Verlauf eine Drop-Down-Liste mit den a,b,c usw. -Werten zu bestücken.
Allerdings können die Felder a,b,c,d,e,f,g,h auch mit "Null" in der Datenbank gesetzt sein.
Ich habe zwar nun eine lösung gefunden, finde sie aber recht hölzern. Ich frage den Wert von a,b,c usw. ab (if !empty...) und arbeite dann mit ihnen weiter, wenn sie bestückt sind. Das macht viel Code und ist recht unelegant.
Kann ich nicht gleich eine Abfrage machen, die nur sinnige Ergenisse liefert und z.b. über eine Schleife in einem 1-Zeiler die Drop-Down-Liste generieren?
$query="select t1.xx, yy, a, b, c, d, e, f, g, h
from t1
INNER JOIN ...
INNER JOIN ...
ON ..
ON ..
where ..."
Grüße, Q.
Hallo Q.
deine Problembeschreibung ist nicht wirklich schlüssig und gibt aufgrund des spartanisch gehaltenen Codebeispiels auch nicht besonders viel preis, womit man dir helfen könnte ...
Du hast a, b, c, ... als Spalten organisiert?
Es wäre spekulativ gesehen besser, so etwas als Zeilen im Datenmodell zu organisieren, dann könntest du mit WHERE
feld is not null
NULL-Werte einfacher ausschliessen.
Oder du stellst deine Query mittels UNION ALL um
SELECT t1.xx, 'Option A', a as Value
FROM ...
WHERE a IS NOT NULL
UNION ALL
SELECT t1.xx, 'Option B', c as Value
FROM ...
WHERE a IS NOT NULL
UNION ALL
SELECT t1.xx, 'Option C', c as Value
FROM ...
WHERE a IS NOT NULL
.. und so weiter
Das macht viel Code und ist recht unelegant.
Wir sind hier doch nicht beim Ballett, oder? Wenn an das momentane Datenmodell gebunden bist, bleibt dir nun mal fast nur der Ausweg über ein if-Konstrukt. Im Rahmen der Möglichkeiten und Notwendigkeit, finde ich das in Ordnung.
Ciao, Frank