En anden mulighed:
INSERT INTO tbl (count, otherID)
VALUES (2, 'a')
ON DUPLICATE KEY UPDATE
count = GREATEST(VALUES(count), count) ;
Advarsel: Dette vil mislykkes, hvis den beståede værdi for count er NULL (i stedet for 2 ). Det vil opdatere kolonnen med NULL . Så det er bedre at bruge IF() eller en CASE klausul.
Medmindre du foretrækker (der går elegancen ...):
ON DUPLICATE KEY UPDATE
count = GREATEST(COALESCE(VALUES(count), count), count) ;