Mysql
 sql >> база данни >  >> RDS >> Mysql

Mysql Изберете редове, където две колони нямат една и съща стойност

Проблемът е, че a !=b е NULL, когато a или b е NULL.

<=> е NULL-безопасният оператор за равенство. За да получите NULL-безопасен, който не е равен на вие, можете просто да обърнете резултата:

SELECT *
FROM my_table
WHERE NOT column_a <=> column_b

Без да използвате оператора null safe, ще трябва да направите това:

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Разлика между схема/база данни в MySQL

  2. Разлики между utf8 и latin1

  3. MySQL Използвате безопасен режим на актуализиране и сте се опитали да актуализирате таблица без WHERE

  4. Как да получите сумата за всяка отделна стойност в друга колона?

  5. JSON_MERGE_PATCH() – Извършете съвместимо с RFC 7396 сливане на JSON документи в MySQL