Comment puis-je trier une colonne de type VARCHAR dans SQL server qui contient les numéros de téléphone?

J'ai un VARCHAR colonne dans une SQL Server 2000 base de données qui peut contenir soit des lettres ou des chiffres. Il dépend de la façon dont l'application est configurée sur le front-end pour le client.

Quand il ne contiennent des chiffres, je veux qu'il soit par ordre numérique, comme par exemple l'"1", "2", "10" au lieu de "1", "10", "2". Les champs contenant des lettres, ou de lettres et de nombres ("A1") peuvent être triées par ordre alphabétique, comme normal. Par exemple, ce serait acceptable, de l'ordre de tri.

1
2
10
A
B
B1

Quelle est la meilleure façon d'atteindre cet objectif?

  • notez également que IsNumeric retourne 1 pour les valeurs 24e4 et 12d34
  • Face à ce problème, il est venu ici. Vu votre question, remarqué une hypothèse erronée. Vous avez dit "les Champs contenant des lettres, ou de lettres et de nombres ("A1") peuvent être triées par ordre alphabétique, comme d'habitude." Essayez de commander A1, A2 et A10. Vous obtiendrez A1, A10, A2. Maintenant que j'ai fini avec la question de la partie, je vais être à la recherche d'une réponse ci-dessous. J'espère en trouver un 🙂
  • le saviez vous?
  • pour être honnête, il est très difficile pour moi de rappeler, après trois ans et demi.
  • Je suppose que vous ne le font pas, mais pensé qu'il valait la peine de le demander. Merci pour la réponse.
InformationsquelleAutor Tim C | 2008-09-23