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

Mysql Vælg rækker, hvor to kolonner ikke har samme værdi

Problemet er, at a !=b er NULL, når enten a eller b er NULL.

<=> er NULL-safe equals-operatoren. For at få en NULL-safe, der ikke er lig med, kan du blot invertere resultatet:

SELECT *
FROM my_table
WHERE NOT column_a <=> column_b

Uden at bruge null safe-operatøren skulle du gøre dette:

SELECT *
FROM my_table
WHERE column_a != column_b
OR (column_a IS NULL AND column_b IS NOT NULL)
OR (column_b IS NULL AND column_a IS NOT NULL)



  1. Sådan fremskyndes masseindsættelse til MS SQL Server ved hjælp af pyodbc

  2. mysqli-forespørgsel returnerer kun første række

  3. Automatisk dataindsamling af databaseskemaændringer i MS SQL Server

  4. Påvirker kolonnerækkefølge ydeevnen i Microsoft SQL Server 2012?