sql >> Databasteknik >  >> RDS >> Mysql

Jämföra med NULL-värden

Alla jämförelser med NULL ger NULL . För att övervinna detta finns det tre operatorer du kan använda:

  • x IS NULL - avgör om vänsterhandsuttryck är NULL ,
  • x IS NOT NULL - som ovan, men tvärtom,
  • x <=> y - jämför båda operanderna för likhet på ett säkert sätt, dvs NULL ses som ett normalvärde.

För din kod, kanske du vill överväga att använda det tredje alternativet och gå med noll säker jämförelse:

SELECT * FROM mycompare 
WHERE NOT(name <=> fname OR name <=> mname OR name <=> lname)


  1. Mysql-tillägget är utfasat och kommer att tas bort i framtiden:använd mysqli eller PDO istället

  2. Skillnaden mellan inline och out-of-line begränsningar

  3. Vad är det bästa sättet att hantera datum i PHP, MySQL, etc?

  4. MySQL vecka beräkning mellan två datum