に最終更新
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