Последнее обновление
JSON_VALID
Описание
Функция JSON_VALID проверяет, соответствуют ли входные данные формату JSON. Она принимает входные данные типа String или JSON и проверяет корректность формата JSON.
Синтаксис
JSON_VALID(<str>)
JSON_VALID(<json>)
Параметры
<str>: тип String, строка в формате JSON для проверки<json>: тип JSON, значение JSON для проверки
Возвращаемые значения
1: если входные данные представляют собой корректный JSON0: если входные данные не соответствуют формату JSONNULL: если входной параметр равен NULL
Примечания
Поддержка параметров типа JSON позволяет избежать возможных проблем с неявным преобразованием типов (из JSON в String) при передаче столбца типа JSON. Как правило, в столбцах типа JSON хранятся корректные данные JSON, поэтому вызов JSON_VALID с параметром типа JSON обычно возвращает 1.
Псевдоним
- JSONB_VALID
Примеры
-
Проверка корректной строки JSON
SELECT json_valid('{"k1":"v31","k2":300}');+-------------------------------------+
| json_valid('{"k1":"v31","k2":300}') |
+-------------------------------------+
| 1 |
+-------------------------------------+ -
Проверка некорректной строки JSON
SELECT json_valid('invalid json');+----------------------------+
| json_valid('invalid json') |
+----------------------------+
| 0 |
+----------------------------+ -
Проверка параметра NULL
SELECT json_valid(NULL);+------------------+
| json_valid(NULL) |
+------------------+
| NULL |
+------------------+ -
Проверка параметра типа JSON
SELECT json_valid(cast('{"k1":"v31","k2":300}' as json));+----------------------------------------------------+
| json_valid(cast('{"k1":"v31","k2":300}' as json)) |
+----------------------------------------------------+
| 1 |
+----------------------------------------------------+