Collections:
JSON_TYPE() - Detecting Type of JSON Value
How to detect the type of a JSON (JavaScript Object Notation) value using the JSON_TYPE() function?
✍: FYIcenter.com
JSON_TYPE(json) is a MySQL built-in function that
returns the data type of a JSON (JavaScript Object Notation) value.
For example:
SELECT JSON_TYPE('[]'), JSON_TYPE('{}'); -- +-----------------+-----------------+ -- | JSON_TYPE('[]') | JSON_TYPE('{}') | -- +-----------------+-----------------+ -- | ARRAY | OBJECT | -- +-----------------+-----------------+ SELECT JSON_TYPE('null'), JSON_TYPE('true'); -- +-------------------+-------------------+ -- | JSON_TYPE('null') | JSON_TYPE('true') | -- +-------------------+-------------------+ -- | NULL | BOOLEAN | -- +-------------------+-------------------+ SELECT JSON_TYPE('"FYI"'), JSON_TYPE('999'); -- +--------------------+------------------+ -- | JSON_TYPE('"FYI"') | JSON_TYPE('999') | -- +--------------------+------------------+ -- | STRING | INTEGER | -- +--------------------+------------------+
Note that JSON_TYPE() does not return the official type NUMERIC on JSON numeric scalars. It actually returns the MySQL data type of any JSON numeric scalar. For example:
SELECT JSON_TYPE('999'), JSON_TYPE('9.99'); -- +------------------+-------------------+ -- | JSON_TYPE('999') | JSON_TYPE('9.99') | -- +------------------+-------------------+ -- | INTEGER | DOUBLE | -- +------------------+-------------------+
Also note that the argument must be a valid JSON encoded MySQL string. Other MySQL values will result an error.
SELECT JSON_TYPE(999); ERROR 3146 (22032): Invalid data type for JSON data in argument 1 to function json_type; a JSON string or JSON type is required.
Reference information of the JSON_TYPE() function:
JSON_TYPE(json): int Returns the data type of a JSON (JavaScript Object Notation) value. Arguments, return value and availability: json: Required. The JSON value to be observed. int: Return value. The data type of the JSON value. Available since MySQL 5.7.
⇒ JSON_UNQUOTE() - Unquoting JSON String
⇐ JSON_TABLE() - Inline Table with JSON Array
2025-03-12, 748🔥, 0💬
Popular Posts:
How to put statements into a statement block in SQL Server Transact-SQL? You can put statements into...
Where to find answers to frequently asked questions on Downloading and Installing SQL Server 2005 Ex...
Where to find answers to frequently asked questions on CREATE, ALTER and DROP Statements in MySQL? H...
What Is the Difference Between GETDATE() and GETUTCDATE() in SQL Server Transact-SQL? The difference...
How To Convert Numeric Values to Character Strings in MySQL? You can convert numeric values to chara...