ISNUMERIC (Transact-SQL)

Aplica-se a:SQL ServerBanco de Dados SQL do AzureInstância Gerenciada de SQL do AzureAzure Synapse AnalyticsPDW (Analytics Platform System)Ponto de extremidade de SQL no Microsoft FabricWarehouse no Microsoft Fabric

Determina se uma expressão é um tipo numérico válido.

Convenções de sintaxe de Transact-SQL

Sintaxe

ISNUMERIC ( expression )

Observação

Para exibir a sintaxe do Transact-SQL para o SQL Server 2014 (12.x) e versões anteriores, confira a Documentação das versões anteriores.

Argumentos

expressão

A expressão a ser avaliada.

Tipos de retorno

int

Comentários

ISNUMERIC retorna quando a expressão de entrada é avaliada como um tipo de dados numérico válido, caso contrário, ela retorna 10. Os tipos de dados numéricos válidos incluem os seguintes itens:

Área Tipos de dados numéricos
Numéricos exatos bigint, int, smallint, tinyint, bit
Precisão fixa decimal, numeric
Aproximado float, real
Valores monetários money, smallmoney

ISNUMERICretorna 1 para alguns caracteres que não são números, como mais (), menos () e símbolos de moeda válidos, como o cifrão ($+-). Para obter uma lista completa de símbolos de moeda, confira money e smallmoney (Transact-SQL).

Exemplos

O exemplo a seguir usa ISNUMERIC para retornar todos os códigos postais que não são valores numéricos.

USE AdventureWorks2022;
GO

SELECT City,
    PostalCode
FROM Person.Address
WHERE ISNUMERIC(PostalCode) <> 1;
GO

Exemplos: Azure Synapse Analytics e PDW (Analytics Platform System)

O exemplo a seguir usa ISNUMERIC para retornar se o nome do banco de dados e a ID são valores numéricos.

USE master;
GO

SELECT name,
    ISNUMERIC(name) AS IsNameANumber,
    database_id,
    ISNUMERIC(database_id) AS IsIdANumber
FROM sys.databases;
GO