SQL Serverでは、ISNUMERIC()
を使用できます。 式が数値であるかどうかを調べる関数。
この関数は、式が数値の場合は1を返し、数値でない場合は0を返します。
この関数を使用するには、関数を呼び出しているときに値/式を関数に渡すだけです。
例1-数式
この関数に数式を渡すとどうなるかを示す例を次に示します。
SELECT ISNUMERIC(250) AS Result;
結果:
+----------+ | Result | |----------| | 1 | +----------+
この場合、値は数値であり、結果は1です。
値が文字列(一重引用符で囲まれている)として提供されている場合でも、同じ結果が得られます。
SELECT ISNUMERIC('250') AS Result;
結果:
+----------+ | Result | |----------| | 1 | +----------+
例2–非数式
値がない場合は次のようになります 数値。
SELECT ISNUMERIC('Hey!') AS Result;
結果:
+----------+ | Result | |----------| | 0 | +----------+
例3–データベースの例
ISNUMERIC()
の使用例を次に示します。 WHERE
データベースを照会するときの句:
USE WideWorldImportersDW; SELECT COUNT(*) AS [Count] FROM Dimension.Customer WHERE ISNUMERIC([Postal Code]) = 1;
結果:
+---------+ | Count | |---------| | 402 | +---------+
これにより、郵便番号が数値のすべての行の数が返されます。
予期しない結果?非数値が数値の場合
一部の文字は、数字でなくても数値として扱われます。これは、この関数を使用するときに注意する必要があることです。そうしないと、予期しない結果が生じる可能性があります。
ISNUMERIC()
を使用すると正を返す非数字を参照してください。 説明と例については。