Details
-
Sub-task
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
Description
The data in json can be =, <, <=, >, >=, <>,! =, and <=>. But the data types in json can be diverse, so when you compare different types, you have a priority, and the high priority is greater than the low priority (you can view the types with the JSON_TYPE() function). The priorities are as follows:
BOOLEAN,ARRAY,OBJECT,STRING,INTEGE,DOUBLE,NULL
Example Sql::
{"a":[10,true]}SELECT JSON_TYPE(v) AS c1
,JSON_TYPE(JSON_VALUE(v, 'lax $.b' ERROR ON ERROR)) AS c2
,JSON_TYPE(JSON_VALUE(v, 'strict $.a[0]' ERROR ON ERROR)) AS c3
,JSON_TYPE(JSON_VALUE(v, 'strict $.a[1]' ERROR ON ERROR)) AS c4
FROM (VALUES ('
')) AS t(v)
limit 10;
Result:
c1 c2 c3 c4
======= ======= ======= =======
OBJECT ARRAY INTEGER BOOLEAN
Attachments
Attachments
Issue Links
- links to