sql >> Database teknologi >  >> RDS >> Sqlserver

Hvordan kan jeg inkludere null-værdier i en MIN eller MAX?

Det er lidt grimt, men fordi NULL s har en særlig betydning for dig, er dette den reneste måde, jeg kan tænke mig at gøre det på:

SELECT recordid, MIN(startdate),
   CASE WHEN MAX(CASE WHEN enddate IS NULL THEN 1 ELSE 0 END) = 0
        THEN MAX(enddate)
   END
FROM tmp GROUP BY recordid

Det vil sige, hvis en række har en NULL , vil vi tvinge det til at være svaret. Kun hvis ingen rækker indeholder en NULL skal vi returnere MIN (eller MAX ).



  1. Arbejder med cPanel MySQL-databaser

  2. OPDATERING med CASE og IN - Oracle

  3. Hvordan indsætter jeg flere værdier i en postgres-tabel på én gang?

  4. Relationelle databaser