Tri des valeurs vides en dernier lieu au lieu de premier

Je suis en train de mettre en œuvre une procédure de tri qui va trier en fonction de la valeur d'une liste déroulante. Ce qui se passe est que lorsque la liste est triée, les champs NULL sera remplacé par la valeur de remplacement spécifiée, dans ce cas ''. C'est être triés d'abord parce que nous sommes tri ascendingly, maintenant je voudrais trier ascendingly MAIS avec des valeurs null DERNIER. Comment pourrais-je mettre en œuvre?

ORDER BY l.IsActive DESC, 
        CASE WHEN @SortOrder = 1 THEN n.DisplayName
             WHEN @SortOrder = 2 THEN CASE ec.IsEquipmentRelated
                                            WHEN  1 THEN ISNULL(el.ShopID,'') + 
                                                    ISNULL(ec.EquipmentAbbr,'') + 
                                                    ISNULL(el.ClassSequenceNumber,'') + 
                                                    ISNULL(el.EquipmentComponent,'') + 
                                                    ISNULL(el.CompSequenceNumber,'')
                                            WHEN  0 THEN ISNULL(ec.EquipmentAbbr,'')
                                            ELSE NULL
                                      END
             ELSE l.DisplayName
        END

Edit: en cours d'Exécution MS SQL Server 2008 /T-SQL

Edit: @Joe Stefanelli, j'ai essayé, c'est pas de la compilation:

ORDER BY l.IsActive DESC, 
    CASE WHEN @SortOrder = 0 THEN l.DisplayName
         WHEN @SortOrder = 1 THEN CASE WHEN n.DisplayName = '' THEN 2 ELSE 1 END, n.DisplayName
         WHEN @SortOrder = 2 THEN 
                                  CASE ec.IsEquipmentRelated
                                        WHEN  1 THEN ISNULL(el.ShopID,'') + 
                                            ISNULL(ec.EquipmentAbbr,'') + 
                                            ISNULL(el.ClassSequenceNumber,'') + 
                                            ISNULL(el.EquipmentComponent,'') + 
                                            ISNULL(el.CompSequenceNumber,'')
                                        WHEN  0 THEN ISNULL(ec.EquipmentAbbr,'')
                                        ELSE NULL
                                  END
     END

source d'informationauteur JF Beaulieu