Peet: INSERT INTO ... ON DUPLICATE KEY UPDATE

Hi,

ich habe ein Problem mit einem mySQL-Befehl (v5):

INSERT INTO ... ON DUPLICATE KEY UPDATE position_status=IF(position=VALUES(position),1,0)  

Ich hätte nun gedacht, dass der Wert position der Wert von dem Datensatz ist, der sich bereits in der Datenbank befindet. Und VALUES(position) sollte demnach der Wert von dem INSERT sein.

Das ist aber scheinbar nicht so, denn ich bekomme stets die 1 geliefert, obwohl die Daten nicht gleich sind.

Weiss jemand, wie ich das Ziel erreiche, dass ich unterschiedliche Werte bei Gleichheit und Ungleichheit der Werte bekomme?

Gruss,
Peet

  1. Ok, hat sich erledigt. Ich hatte im "ON DUPLICATE"-Teil die position geupdated, bevor das IF kam.
    Und dann waren die beiden Werte natürlich gleich :)