sql >> Databasteknik >  >> RDS >> Mysql

Skillnaden mellan IS NOT NULL och NOT (fält =NULL) i dessa 2 frågor

NULLs är lite konstiga. En NULL är aldrig lika med allt inklusive en annan NULL. Vidare returnerar varje boolesk operation mot en NULL NULL.

Uttrycket end IS NOT NULL kommer att utvärdera false om end är NULL och true om end är inte NULL.

Uttrycket NOT( end=NULL) kommer faktiskt alltid att utvärderas till NULL eftersom (end = NULL) är lika med NULL och NOT (NULL) är också lika med NULL. Mer till punkten i en WHERE-sats, kommer den aldrig utvärdera true .



  1. EF5:Kan inte bifoga filen '{0}' som databas '{1}'

  2. Sequelize läser endast datumtid i UTC

  3. Optimera GROUP BY-fråga för att hämta den senaste raden per användare

  4. mysql sök efter en catid i ett textfält