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

Как да поръчам по максимум две колони, които могат да бъдат нулеви в MySQL?

Ако знаете това salaryplus винаги ще бъде по-голямо от salaryminus , тогава можете да направите

order by coalesce(salaryplus, salaryminus, 0)

coalesce ще върне първата стойност, която не е нула или (в този пример) 0, ако и двете стойности са нулеви.

В противен случай направете нещо подобно:

order by greatest(ifnull(salaryminus,0), ifnull(salaryplus,0))

Това ще третира и двете salaryminus и salaryplus като 0, ако са нулеви, и ще бъдат подредени по по-голямото от двете.



  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:SOURCE грешка 2?

  2. Регулиране за настройката на часовата зона по подразбиране на RDS

  3. Напишете MySQL заявка, за да получите необходимия резултат

  4. Как да спра mysqld

  5. Инсталиране на Django mysqlclient