Cheatah: MySQL max

Beitrag lesen

Hi,

Works as designed und documented.
das ändert nichts daran, dass es meiner Meinung nach ein Designfehler ist.
Kommt auf die Zielstellung an.

die Zielstellung ist zunächst einmal ein DBMS herzustellen.

Ist es denn (immer) ein Fehler?

Nein. Es ist *allgemein* ein Fehler, da keine deterministischen Ergebnisse gewährleistet sind. Wenn das Datenbank-Layout dies übernimmt, spricht nichts dagegen, dass für diesen Einzelfall eine Lösung bereit gestellt wird. Ob diese automatisiert aktiv werden kann, möchte ich gerade nicht untersuchen, zumal im aktuellen Fall das Datenbank-Layout ganz offenkundig nichts zur Problemlösung beiträgt. Im Zweifel könnte der SQL-Dialekt die Möglichkeit vorsehen, einen Hint anzugeben, dass es genügt, den ersten gefundenen Datensatz (als Beispiel) zu verwenden. Ohne etwas Derartiges ist es, meiner Meinung nach, bar jedweden Zweifels ein live-kritischer Bug der Software, wenn in dieser Situation keine Fehlermeldung geschmissen wird.

Wenn die Daten nicht normalisiert vorliegen, ist das Wählen eines beliebigen Wertes aus den redundanten genau das erwartete Ergebnis.

Die Daten sind nicht redundant. Das Statement ergibt über den gruppierten Wert unterschiedliche Datensätze. Fehler.

Damit ist es kein Fehler aus der Sicht dieses Anwenders.

Doch, sonst hätte der Anwender seine Frage nicht gestellt. Er erhält nicht das Ergebnis, das er erwartet hat, weil sein DBMS kurz gesagt "irgendwas" liefert, nicht jedoch das, was es liefern soll.

Es ist auch kein Fehler, Daten nicht immer normalisiert vorliegen zu haben.

Ich sehe die Normalisierung nicht als Teil des aktuellen Problems an.

Die Wege, die zu Erfolg führen, sind nicht allein durch diesen Erfolg schon verziehen.
Das klingt so generös, als ob es nur eine maßgebliche Stelle gäbe, die Festlegungen treffen und Abweichungen bewerten darf.

Vor allem klingt es so, als ob der Zweck doch nicht alle Mittel heiligt.

Mich enttäuschte dann eher, dass sie (Handbuch lesen sie ja sowieso nicht) nicht selbst erkennen, dass bei nicht redundanten Daten die Auswahl eines solchen Felder ein Problem darstellt.

Ja. Ich habe hierfür jedoch eher Verständnis, weil die Nichterkenntnis bei Unerfahrenen vorliegt, im Gegensatz zu erfahrenen Leuten wie z.B. die Verantwortlichen für die Funktionsweise von MySQL.

Cheatah

--
X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
X-Will-Answer-Email: No
X-Please-Search-Archive-First: Absolutely Yes