sql >> Database >  >> RDS >> Mysql

Hoe te bestellen met maximaal twee kolommen die nul kunnen zijn in MySQL?

Als u weet dat salaryplus zal altijd groter zijn dan salaryminus , dan kun je

order by coalesce(salaryplus, salaryminus, 0)

coalesce retourneert de eerste waarde die niet null is, of (in dit voorbeeld) 0, als beide waarden null zijn.

Doe anders zoiets als dit:

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

Dit behandelt beide salaryminus en salaryplus als 0 als ze nul zijn, en zal worden gerangschikt op de grootste van de twee.



  1. Entity Framework core - Bevat is hoofdlettergevoelig of niet hoofdlettergevoelig?

  2. .po/.mo-bestanden uitvoeren of laden voor lokalisatie in php

  3. Complete gids om SQL Database Error 5243 op te lossen

  4. Hoe kan ik toestaan ​​dat een parameter in een vervolgkeuzelijst in SSRS een standaardwaarde heeft van -- All -- ?