Rolf B: mysql: NULL Wert erzeugen

Beitrag lesen

Hallo Jörg,

das ist mir nicht konkret genug.

Diese Abfrage zieht mir die Gesamt-Rabattsätze für die (4) Vorgänge, die in die Rechnung einfließen sollen.

D.h. dass es 4 sind, ist jetzt nur ein Beispiel; es könnte auch nur einer sein oder 17?

Und "xyz" ist nicht nur eine Column, sondern es sind etliche Spalten? D.h. du hast einen Select, und der liefert Rows. Und diese Rows - was passiert damit? Vor allem: wo? Denn dieser Satz ist mir ein Rätsel:

Anschließend mache ich aus der Ergebnismenge ein unique_array

Bitte, was machst Du? Eine SQL Operation "unique array" kenne ich nicht. Ich kenne DISTINCT - was aber Rows liefert, kein Array. MySQL kennt keine Arrays (es sei denn, als Teil einer JSON Operation). PHP kennt Arrays, und eine array_unique Funktion, aber die kann man nicht auf ein Array aus Rows anwenden. Das Entfernen von Duplikaten wäre mit einem SELECT DISTINCT auf SQL Ebene ohnehin einfacher. Wenn Du denn echte Duplikate im Ergebnis hast, wo alle - wirklich alle - Spalten gleich sind.

und verweigere die Fakturierung, wenn das übrig gebliebene Array mehr als 1 Element hat

Das klingt jetzt nicht mehr nach SQL, eher nach PHP. Deine Frage hatte aber MYSQL als Tag. Deswegen weiß ich immer noch nicht, auf welchem Pfad Du unterwegs bist, nach was für einem NULL Du suchst und was Du dann damit anzufangen gedenkst.

Wenn Du ohnehin im PHP unterwegs bist, sollte doch ein IF reichen, um die Anzahl der Rows nach den Duplikatentfernung zu prüfen.

Rolf

--
sumpsi - posui - obstruxi