Wie finde ich das Maximum zweier expliziter Werte in MySQL? Etwas wie MAXIMUM (1, @ foo).
Es gibt Gruppenfunktionen wie MAX, MIN, AVG usw., die den Spaltennamen als Argument verwenden und mit Ergebnismengen arbeiten. Ist es möglich, zwei explizite Werte in eine Ergebnismenge zu konvertieren und diese Funktionen zu verwenden? Einige andere Möglichkeiten?
P.S .: Ich brauche eine Max-Funktion für eine meiner gespeicherten Prozeduren.
Wie finde ich das Maximum zweier expliziter Werte in MySQL? Etwas wie MAXIMUM (1, @ foo).
Verwenden Sie die Funktion GREATEST :
%Vor%... gibt den Wert zurück, der größer ist - wenn 1 größer ist als der Wert in @foo, erhalten Sie 1. Andernfalls erhalten Sie den Wert, der in @foo ist. Außerdem ist es nicht eine Aggregatfunktion.
Die Alternative wäre, eine CASE-Anweisung zu verwenden:
%Vor%... weil CASE der ANSI-Standard ist - das funktioniert auf Oracle, MySQL, SQL Server, Postgres ...
Tags und Links sql math mysql stored-procedures