Banco De Dados.Guia
no SQL Server, você pode usar a função ISNUMERIC()
para descobrir se uma expressão é numérica ou não.
a função retorna 1 se a expressão for numérica e 0 se não for.
para usar esta função, basta passar o valor / expressão para a função ao chamá-la.
Exemplo 1 – Expressão Numérica
Aqui está um exemplo para demonstrar o que acontece quando você passar por uma expressão numérica para esta função.
SELECT ISNUMERIC(250) AS Result;
resultado:
+----------+| Result ||----------|| 1 |+----------+
neste caso, o valor é numérico e o resultado é 1.
obtemos o mesmo resultado, mesmo que o valor seja fornecido como uma string (entre aspas simples).
SELECT ISNUMERIC('250') AS Result;
Resultado:
+----------+| Result ||----------|| 1 |+----------+
Exemplo 2 – Não-Expressão Numérica
Aqui está o que acontece quando o valor não é numérico.
SELECT ISNUMERIC('Hey!') AS Result;
Resultado:
+----------+| Result ||----------|| 0 |+----------+
Exemplo 3 – Um Exemplo de Banco de dados
Aqui está um exemplo do uso de ISNUMERIC()
em um WHERE
cláusula quando consultar um banco de dados:
USE WideWorldImportersDW;SELECT COUNT(*) AS FROM Dimension.CustomerWHERE ISNUMERIC() = 1;
Resultado:
+---------+| Count ||---------|| 402 |+---------+
isso retorna a contagem de todas as linhas com um código postal numérico.
Resultados Inesperados? Quando não numérico é numérico
alguns caracteres são tratados como numéricos, mesmo quando não são um número. Isso é algo que você precisa estar ciente ao usar esta função, caso contrário, você pode obter resultados que não espera.
veja caracteres não numéricos que retornam positivos ao usar ISNUMERIC()
para uma explicação e exemplos.
Leave a Reply