Mysql
 sql >> Base de données >  >> RDS >> Mysql

Fonction MySQL MAX() pour comparer les valeurs numériques dans une mise à jour ?

MySQL prend en charge une fonction appelée GREATEST() . Il renvoie la plus grande valeur parmi une liste de ses arguments.

UPDATE person SET dollars = GREATEST(0, dollars-20) WHERE id=1

Ce n'est pas une fonction standard dans ANSI SQL, alors ne comptez pas sur sa disponibilité dans d'autres marques de base de données SQL. Si vous avez besoin d'une solution indépendante du fournisseur, utilisez le CASE syntaxe suggérée par d'autres. Mais si vous n'avez besoin que de MySQL, cette fonction est plus concise.