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, 2249🔥, 0💬
Popular Posts:
How To Count Rows with the COUNT(*) Function in SQL Server? If you want to count the number of rows,...
How to execute statements under given conditions in SQL Server Transact-SQL? How to use IF ... ELSE ...
How To Convert Numeric Expression Data Types using the CONVERT() Function in SQL Server Transact-SQL...
How To Connect to a MySQL Server with a Port Number in MySQL? If you want to connect a MySQL server ...
Where to find answers to frequently asked questions on Storage Engines: MyISAM, InnoDB and BDB in My...