sql >> Database >  >> RDS >> Mysql

MySQL MAX() functie om numerieke waarden in een update te vergelijken?

MySQL ondersteunt een functie genaamd GREATEST() . Het retourneert de grootste waarde uit een lijst van zijn argumenten.

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

Dit is geen standaardfunctie in ANSI SQL, dus reken er niet op dat het beschikbaar is in SQL-databases van andere merken. Als u een leverancieronafhankelijke oplossing nodig heeft, gebruikt u de CASE syntaxis voorgesteld door anderen. Maar als u alleen MySQL hoeft te gebruiken, is deze functie beknopter.




  1. Python, converteer 4-byte char om MySQL-fout te voorkomen Onjuiste tekenreekswaarde:

  2. Hoe krijg ik alleen tabellen, geen views met SHOW TABLES?

  3. Gegevens tussen twee datums selecteren?

  4. sudo yum install php55w-mysqlnd conflict