SQL Server 2005 Convertir VARCHAR INT mais par défaut sur de type non valide

J'ai un varchar(100) de la colonne dans une table qui contient un mélange d'entiers (comme des chaînes de caractères) et non entier cordes. E. g.

| dimension varchar(100) |
| '5'                    |
| '17'                   |
| '3'                    |
| 'Pyramids'             |
| 'Western Bypass'       |
| '15'                   |

Comment puis-je écrire une expression, par exemple, à la somme de toutes les valeurs sont valables entiers? Si je devais essayer:

-- should return 5 + 17 + 3 + 15 = 40
SELECT
    SUM( CONVERT( INT, dimension ) )
FROM
    mytable

Je voudrais recevoir un Conversion failed when converting the varchar value 'Pyramids' to data type int. erreur.

Est-il un test que je peux utiliser dans mon expression, à l'instar de la ISNULL() fonction, qui me permet de spécifier une valeur par défaut si le champ n'est pas un nombre?

InformationsquelleAutor PP. | 2010-03-10