NET_IPV4_TO_INT64 関数は、バイナリ形式の IPv4 アドレスを BIGINT 値に変換します。
構文
BIGINT NET_IPV4_TO_INT64(BINARY <addr>)パラメーター
addr: 必須。BINARY データの型の IPv4 アドレス。この関数は IPv6 アドレスをサポートしていません。
戻り値
IP アドレスを表す BIGINT 値を返します。次のルールが適用されます。
入力 addr が BINARY 形式の有効な IPv4 アドレスでない場合、関数はエラーを返します。
入力 addr が NULL の場合、関数は NULL を返します。
説明
IP アドレスの最下位ビットは、返される整数の最下位ビットとして格納されます。たとえば、1 は 0.0.0.1 を表し、511 は 0.0.1.255 を表します。出力は [0, 4294967295] の範囲です。
例
例 1: この関数を NET_SAFE_IP_FROM_STRING 関数と併用します。NET_SAFE_IP_FROM_STRING 関数は、IPv4 アドレスを STRING 形式から BINARY 形式に変換します。次に、NET_IPV4_TO_INT64 関数がバイナリの結果を BIGINT 値に変換します。
-- 808530483 を返します SELECT NET_IPV4_TO_INT64(NET_SAFE_IP_FROM_STRING('48.49.50.51')); -- 1 を返します SELECT NET_IPV4_TO_INT64(NET_SAFE_IP_FROM_STRING('0.0.0.1')); -- 511 を返します SELECT NET_IPV4_TO_INT64(NET_SAFE_IP_FROM_STRING('0.0.1.255'));例 2: 入力値が NULL の場合、関数は NULL を返します。
-- NULL を返します SELECT NET_IPV4_TO_INT64(NULL);
関連関数
NET_IPV4_TO_INT64 はネットワーク関数です。ネットワーク関数の詳細については、「ネットワーク関数」をご参照ください。