メインコンテンツまでスキップ
に最終更新

IPV4_STRING_TO_NUM_OR_DEFAULT

説明​

A.B.C.D 形式(ドットで区切られた 十進数)の IPv4 アドレス文字列を受け取り、対応する IPv4 アドレスの数値をネットワークバイト順(ビッグエンディアン)の BIGINT で返します。

構文​

IPV4_STRING_TO_NUM_OR_DEFAULT(<ipv4_string>)

パラメータ​

  • <ipv4_string>: A.B.C.D 形式の IPv4 アドレス文字列

戻り値​

戻り値の型: BIGINT

戻り値の意味:

  • 対応する IPv4 アドレスの数値を、ネットワークバイト順(ビッグエンディアン)の整数で返します
  • 0 を返すのは、無効な IPv4 文字列または NULL を入力した場合です

使用上の注意​

  • この関数は例外を発生させません。無効な入力では一律に 0(0.0.0.0 に相当)を返します
  • 入力文字列の前後に空白を含めることはできません
  • 不正なデータのクレンジングなど、変換エラーを許容する場合に使用します

例​

IPv4 文字列 192.168.0.1 を、ネットワークバイト順(ビッグエンディアン)の整数に変換します。

select ipv4_string_to_num_or_default('192.168.0.1');
+----------------------------------------------+
| ipv4_string_to_num_or_default('192.168.0.1') |
+----------------------------------------------+
| 3232235521 |
+----------------------------------------------+

IPv4 アドレスの境界値(最小値と最大値)を確認します。

select
ipv4_string_to_num_or_default('0.0.0.0') as min_v4,
ipv4_string_to_num_or_default('255.255.255.255') as max_v4;
+--------+-----------+
| min_v4| max_v4 |
+--------+-----------+
| 0 | 4294967295|
+--------+-----------+

無効な入力では例外を発生させず、0 を返します。

select ipv4_string_to_num_or_default('256.0.0.1');
+--------------------------------------------+
| ipv4_string_to_num_or_default('256.0.0.1') |
+--------------------------------------------+
| 0 |
+--------------------------------------------+

select ipv4_string_to_num_or_default(' 1.1.1.1 ');
+--------------------------------------------+
| ipv4_string_to_num_or_default(' 1.1.1.1 ') |
+--------------------------------------------+
| 0 |
+--------------------------------------------+

select ipv4_string_to_num_or_default(NULL);
+-------------------------------------+
| ipv4_string_to_num_or_default(NULL) |
+-------------------------------------+
| 0 |
+-------------------------------------+

キーワード​

IPV4_STRING_TO_NUM_OR_DEFAULT