Buenas! Tengo una duda de SQL que me llevo planteando un tiempo. Teniendo la siguiente sentencia:
UPDATE tabla_ejemplo SET campo=campo-1 WHERE id_tabla_ejemplo=X LIMIT 1
Hay alguna manera de hacer que "campo" nunca sea menor que cero? Es decir, quiero que actualice ese campo restandole 1 pero que en caso de que sea 0, quede en 0 y no en -1.
Sé que es muy fácil si antes extraes el valor y manipulas el resultado con PHP. Pero quiero hacerlo sin tener que sacar antes el valor para ahorrar una consulta.
Los tipos INT, MEDIUMINT y BIGINT cogen tanto positivos como negativos, existe algun tipo de valor que solo pille positivos? igual eso me valdría. O quizas algún extra en la sentencia que lo haga...
En fin gracias por adelantado!