Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Base de Dados SQL do Azure
Azure SQL Managed Instance
Azure Synapse Analytics
Endpoint de análise SQL no Microsoft Fabric
Armazém no Microsoft Fabric
Base de dados SQL no Microsoft Fabric
Determina se uma expressão é um tipo numérico válido.
Transact-SQL convenções de sintaxe
Sintaxe
ISNUMERIC ( expression )
Arguments
expressão
A expressão a avaliar.
Tipos de devolução
int
Observações
ISNUMERIC retorna 1 quando a expressão de entrada avalia para um tipo de dado numérico válido; caso contrário, retorna 0.
Os tipos de dados numéricos válidos incluem os seguintes itens:
| Area | Tipos de dados numéricos |
|---|---|
| Números exatos | bigint, int, smallint, tinyint, bit |
| Precisão fixa | decimal, numérico |
| Aproximado | flutuar, real |
| Valores monetários | dinheiro, dinheiro pequeno |
ISNUMERIC retorna 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 uma lista completa de símbolos monetários, veja dinheiro e pequeno dinheiro (Transact-SQL).
Examples
O exemplo seguinte serve ISNUMERIC para devolver todos os códigos postais que não são valores numéricos.
Note
No Base de Dados SQL do Azure e na base de dados SQL no Microsoft Fabric, a USE declaração não está disponível. Em vez disso, ligue-se diretamente à base de dados pretendida e execute o resto do exemplo de código.
USE AdventureWorks2022;
GO
SELECT City,
PostalCode
FROM Person.Address
WHERE ISNUMERIC(PostalCode) <> 1;
GO
Exemplos: Azure Synapse Analytics
O exemplo seguinte serve ISNUMERIC para devolver se o nome e o ID da base de dados são valores numéricos.
Note
No Base de Dados SQL do Azure e na base de dados SQL no Microsoft Fabric, a USE declaração não está disponível. Em vez disso, liga-te diretamente à master base de dados e executa o resto do exemplo de código.
USE master;
GO
SELECT name,
ISNUMERIC(name) AS IsNameANumber,
database_id,
ISNUMERIC(database_id) AS IsIdANumber
FROM sys.databases;
GO