IS_UUID
Описание
Если параметр представляет собой корректный UUID, возвращает 1. Если UUID некорректен, возвращает 0. Если параметр равен NULL, возвращает NULL.
UUID считается корректным, если он имеет правильную длину и содержит только допустимые символы (шестнадцатеричные цифры в любом регистре, а также необязательные дефисы и фигурные скобки). Он может быть представлен в одном из следующих трёх форматов:
aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee
aaaaaaaabbbbccccddddeeeeeeeeeeee
{aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee}
Эта функция использует иные правила проверки текста, чем встроенный тип 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 |
+---------------+