sql >> Database >  >> RDS >> Sqlserver

De positie van NULL bij het sorteren wijzigen

Het gemakkelijkst is om eerst een extra sorteervoorwaarde toe te voegen:

ORDER BY CASE WHEN field is null then 0 else 1 END,field DESC

Of u kunt proberen het op het maximum van zijn gegevenstype in te stellen:

ORDER BY COALESCE(field,'99991231') DESC

COALESCE /ISNULL werkt prima, op voorwaarde dat u geen "echte" gegevens hebt die dezelfde maximale waarde gebruiken. Als dat zo is, en je moet ze onderscheiden, gebruik dan het eerste formulier.



  1. Splits de gegeven string en bereid de case-instructie voor

  2. MySQL-query Select, SUM, LEFT JOIN

  3. Hoe de Oracle-tabelfunctie (pipelined-functie) aan te roepen vanuit .NET

  4. MySQL wait_timeout wordt niet gehonoreerd voor lange zoekopdracht?