跳到主要内容
最后 更新

IS_UUID

描述

如果参数是一个有效的uuid,返回1。如果是一个无效的uuid,返回0。参数为NULL,则返回NULL。

一个uuid被称为有效,即其长度正确且仅包含允许的字符(任意大小写的十六进制数字,以及可选的连字符和花括号)。可概括为以下三种格式之一:

aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee
aaaaaaaabbbbccccddddeeeeeeeeeeee
{aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee}

本函数的文本校验规则与原生 UUID 类型 不同:本函数接受带花括号的标准 UUID,原生 UUID 解析器不接受。校验可写入原生 UUID 列的文本时,请使用 TO_UUID_OR_NULLTRY_CAST(<str> AS UUID)

语法

IS_UUID ( <str> )

参数

参数说明
<str>一个字符串

返回值

<str> 为有效的uuid,返回1,否则返回0。

特殊情况:

  • 如果参数为 NULL,返回 NULL

示例

select is_uuid("88a06b4a-732c-48bd-9984-fecb81285cc1");
+-------------------------------------------------+
| is_uuid("88a06b4a-732c-48bd-9984-fecb81285cc1") |
+-------------------------------------------------+
| 1 |
+-------------------------------------------------+
select is_uuid("{88a06b4a-732c-48bd-9984-fecb81285cc1}");
+-------------------------------------------------+
| is_uuid("88a06b4a-732c-48bd-9984-fecb81285cc1") |
+-------------------------------------------------+
| 1 |
+-------------------------------------------------+
select is_uuid("88a06b4a732c48bd9984fecb81285cc1");
+---------------------------------------------+
| is_uuid("88a06b4a732c48bd9984fecb81285cc1") |
+---------------------------------------------+
| 1 |
+---------------------------------------------+
select is_uuid("{88a06b4a732c48bd9984fecb81285cc1}");
+-----------------------------------------------+
| is_uuid("{88a06b4a732c48bd9984fecb81285cc1}") |
+-----------------------------------------------+
| 0 |
+-----------------------------------------------+
select is_uuid(NULL);
+---------------+
| is_uuid(NULL) |
+---------------+
| NULL |
+---------------+