Switch to: V9V8V7V6V5

This is an old revision of the document!

JSON Functions

JSON_BUILD_ARRAY( [inValue1,...,inValueN] )

Creates a JSON array from the list of input arguments.

SELECT json_build_array('foo',1,'bar',2, true)
=> '[\"foo\",1,\"bar\",2,true]'

JSON_BUILD_OBJECT( [inKey1, inValue1,..., inKeyN, inValueN] )

Creates a JSON object from the list of input arguments.

SELECT json_build_object('foo',1,'bar',2)
=> '{\"foo\":1,\"bar\":2}'

JSON_EXTRACT_PATH( inStr, inPath [, inDelimiter = ','] )

Returns JSON value pointed to by inPath.

SELECT json_extract_path( '{"foo":1,"bar":2}', 'bar')
=> 2
SELECT json_extract_path('[11,"25",null]', 2)
=> "25"


Returns formatted JSON text.

SELECT json_format( '[{\"f1\":1,\"f2\":null},2,null,3]' )
=> [{\n\t\t\"f1\":\t1,\n\t\t\"f2\":\tnull\n\t}, 2, null, 3]


Returns the number of elements in the outermost JSON array (size of array if function was successfully completed, otherwise null) or object.

SELECT json_length( '[1,2,3,{\"f1\":1,\"f2\":[5,6]},4]' )
=> 5


Returns the type of the outermost JSON value as a text string. Possible types are object, array, string, number, boolean, and null.

SELECT json_typeof( '-123.4' )
=> 'number'