ISNUMERIC (Transact-SQL)
В этой статье
Область применения: SQL Server
База данных SQL Azure Управляемый экземпляр SQL Azure
конечной точке аналитики платформы Аналитики Azure Synapse Analytics
(PDW)
в Microsoft Fabric
Хранилище в Microsoft Fabric
Определяет, имеет ли переданное выражение допустимый числовой тип.
Соглашения о синтаксисе Transact-SQL
ISNUMERIC ( expression )
Вычисляемого выражения .
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
В следующем примере используется ISNUMERIC
для возврата имени базы данных и идентификатора числовых значений.
USE master;
GO
SELECT name,
ISNUMERIC(name) AS IsNameANumber,
database_id,
ISNUMERIC(database_id) AS IsIdANumber
FROM sys.databases;
GO