最后于 更新
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_NULL 或 TRY_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 |
+---------------+