[MySQL] - Funktionsaufruf bei UPDATE

GTStefan

Grünschnabel
UPDATE charakter SET hp = min( 101, 166 ) WHERE char_id = "1"

Ich möchte gern "hp" auf die kleinste der zwei Zahlen setzen. Also auf 101, in diesem Fall. Kann es sein, das die min() funktion nicht so funktioniert, wie ich mir das vorstelle?
Darf man Funktionen überhaupt bei einem UPDATE einsetzen?
 
Zuletzt bearbeitet:
Hallo,

also soweit ich mich noch daran erinnern kann, kannst Du das nicht so machen. Du kannst max() und min() in select benutzen "select min(xyz) from... blala...." oder" select ... from... where... group by xyz having max(xyz)" das sind so die Fälle die ich noch im Kopf habe...
Ich würd mir des in der Referenz nochmal anschauen.... Mysql Referenz

vg Clemens
 
Die Funktion die Du meinst heißt in MySQL glaube ich LEAST(), das Pendant hieße GREATEST(). MIN() und MAX() sind Aggregatfunktionen, die nur in Zusammenhang mit GROUP BY sinnvoll sind.

Martin
 
Mensch stand ich auf der Leitung...

Natürlich darf man hier nur comparison-functions einsetzen. Wie ManicMarble schon richtig vermutete, ich suchte LEAST().

thx an alle, und erledigt.
 
Zuletzt bearbeitet:
Zurück