sql >> Database teknologi >  >> RDS >> Mysql

MySQL:få MAX eller GREATEST af flere kolonner, men med NULL-felter

Brug COALESCE

SELECT id, 
   GREATEST(date1, 
     COALESCE(date2, 0),
     COALESCE(date3, 0)) as datemax 
FROM mytable

Opdatering:Dette svar brugte tidligere IFNULL hvilket virker, men som Mike Chamberlain påpegede i kommentarerne, COALESCE er faktisk den foretrukne metode.



  1. Gem mysql-forespørgselsoutput i en shell-variabel

  2. Integrering af ServiceNow med Oracle Identity Cloud Service (IDCS)

  3. Hvordan SIN() virker i MariaDB

  4. hvordan man får en liste over databaseskemanavne på MySql ved hjælp af java JDBC