Tri d'une colonne VARCHAR contenant des nombres dans SQL Server
Tri d'une colonne VARCHAR contenant un mélange de lettres et de chiffres peut être difficile, en particulier lorsque l'ordre souhaité est numérique pour numérique valeurs.
Approche :
L'approche recommandée consiste à compléter les valeurs numériques avec un caractère de début pour garantir qu'elles ont toutes la même longueur de chaîne. Cela permet à SQL Server de comparer les valeurs numériquement.
Solution :
SELECT MyColumn FROM MyTable ORDER BY CASE ISNUMERIC(MyColumn) WHEN 1 THEN REPLICATE('0', 100 - LEN(MyColumn)) + MyColumn ELSE MyColumn END
Dans cette requête :
Exemple :
Considérons une colonne nommée " MaColonne" avec ce qui suit valeurs :
En utilisant la requête ci-dessus, le les résultats triés seraient :
1 2 10 A B B1
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!