Поделиться через


ISNUMERIC (Transact-SQL)

Применимо к:SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure Управляемый экземпляр SQL Azure Конечная точка аналитики аналитики Synapse Analytics Analytics (PDW)SQL Analyticsв Microsoft FabricХранилище в Microsoft Fabric

Определяет, имеет ли переданное выражение допустимый числовой тип.

Соглашения о синтаксисе Transact-SQL

Синтаксис

ISNUMERIC ( expression )

Примечание.

Сведения о синтаксисе Transact-SQL для SQL Server 2014 (12.x) и более ранних версиях см . в документации по предыдущим версиям.

Аргументы

выражение

Вычисляемого выражения .

Типы возвращаемых данных

int

Замечания

ISNUMERIC возвращает значение, когда входное выражение вычисляется 1 в допустимом числовом типе данных; в противном случае возвращается 0. Допустимые числовые типы данных включают следующие элементы:

Площадь Числовые типы данных
Точные числовые значения bigint, int, smallint, tinyint, bit
Исправлена точность decimal, numeric
Приблизительные значения float, real
Денежные значения money, smallmoney

ISNUMERIC возвращается 1 для некоторых символов, которые не являются цифрами, такими как плюс (+), минус (-) и допустимые символы валюты, такие как знак доллара ($). Полный список символов валют см. в статье Типы money и smallmoney (Transact-SQL).

Примеры

В следующем примере используется ISNUMERIC для возврата всех почтовых кодов, которые не являются числовыми значениями.

USE AdventureWorks2022;
GO

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

Примеры: Azure Synapse Analytics и система платформы аналитики (PDW)

В следующем примере используется ISNUMERIC для возврата имени базы данных и идентификатора числовых значений.

USE master;
GO

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