ISNUMERIC (Transact-SQL)

適用対象: はいSQL Server (サポートされているすべてのバージョン) はいAzure SQL データベース はいAzure SQL Managed Instance はいAzure Synapse Analytics はいParallel Data Warehouse

式が数値型として有効かどうかを調べます。

トピック リンク アイコン Transact-SQL 構文表記規則

構文

ISNUMERIC ( expression )  

注意

SQL Server 2014 以前の Transact-SQL 構文を確認するには、以前のバージョンのドキュメントを参照してください。

引数

式 (expression)
評価対象となるを指定します。

戻り値の型

int

解説

ISNUMERIC は、入力式が有効な数値データ型であると判断される場合に 1 を返します。それ以外の場合は 0 を返します。 有効な数値データ型は次のとおりです。

領域 数値データ型
真数 bigintintsmallinttinyintbit
固定有効桁数 decimalnumeric
概数 floatreal
通貨値 moneysmallmoney

注意

ISNUMERIC は、数字以外の一部の文字に対して 1 を返します。たとえばプラス (+)、マイナス (-)、ドル記号 ($) などの通貨記号がこれに該当します。 通貨記号の完全な一覧を参照してください money および smallmoney (Transact-SQL).

この例では、ISNUMERIC を使用して数値型でないすべての郵便番号を返しています。

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

例: Azure Synapse Analytics、Analytics Platform System (PDW)

この例では、ISNUMERIC を使用して数値型でないすべての郵便番号を返しています。

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

関連項目