メインコンテンツまでスキップ
バージョン: 26.x

IS_IPV6_STRING

is_ipv6_string

説明

入力文字列が有効なIPv6アドレス形式かどうかをチェックします。有効なIPv6アドレスの場合は1を返し、そうでない場合は0を返します。

エイリアス

  • IS_IPV6

構文

IS_IPV6_STRING(<ipv6_str>)

パラメータ

  • <ipv6_str>: チェック対象の文字列

戻り値

戻り値の型: TINYINT

戻り値の意味:

  • 1を返す: 入力が有効なIPv6アドレス形式であることを示す
  • 0を返す: 入力が有効でないIPv6アドレス形式であることを示す
  • 入力がNULLの場合はNULLを返す

使用上の注意

  • 文字列形式がIPv6アドレス仕様に準拠しているかどうかのみをチェックする
  • 実際のIPアドレス変換は行わず、形式の検証のみを実行する
  • NULL入力をサポートし、NULLを返す

有効なIPv6アドレス形式をチェックする。

SELECT is_ipv6_string('2001:db8::1') as is_valid;
+----------+
| is_valid |
+----------+
| 1 |
+----------+

様々なIPv6アドレス形式を確認します。

SELECT 
is_ipv6_string('::1') as localhost,
is_ipv6_string('2001:db8::1') as standard,
is_ipv6_string('2001:db8:0:0:0:0:0:1') as expanded;
+-----------+----------+----------+
| localhost | standard | expanded |
+-----------+----------+----------+
| 1 | 1 | 1 |
+-----------+----------+----------+

無効なIPv6アドレス形式をチェックします。

SELECT 
is_ipv6_string('2001:db8::1::2') as double_colon,
is_ipv6_string('2001:db8:1') as too_short,
is_ipv6_string('2001:db8:1:2:3:4:5:6:7') as too_long,
is_ipv6_string('not-an-ipv6') as not_ipv6;
+--------------+-----------+----------+----------+
| double_colon | too_short | too_long | not_ipv6 |
+--------------+-----------+----------+----------+
| 0 | 0 | 0 | 0 |
+--------------+-----------+----------+----------+

NULL入力をチェックします。

SELECT is_ipv6_string(NULL) as null_check;
+------------+
| null_check |
+------------+
| NULL |
+------------+

キーワード

IS_IPV6_STRING