UPDATE tbl SET counts=counts-1 ...
4
A
Répondre
8
Si count
est la seule colonne que vous mettez à jour (ou, vous n'avez pas d'autres critères spécifiés dans votre clause where), alors vous pouvez simplement le faire dans la clause where
UPDATE [Table] SET counts = counts - 1 WHERE counts > 0;
Cependant, si vous mettez à jour les autres colonnes dans la même requête, cela ne fonctionnera pas. Mais vous avez des options
UPDATE [Table] SET counts = MAX(counts - 1, 0);
ou
UPDATE [Table] SET counts = CASE WHEN counts > 0 THEN counts - 1 ELSE 0 END;
6
UPDATE tbl
SET counts=counts-1
WHERE counts > 0
0
grâce à @Peter Bailey
c'est l'exemple avec le sélecteur WHERE.
UPDATE [tbl_multimedia] SET [m_publish] = CASE WHEN [m_publish] = 0 THEN '1' ELSE '0' END WHERE id='1'
Bonne chance.