5+5; // 10
Multiplication of two integers5*5; // 25
If we add a number to a string, the number will be converted into a string and the result will be a concatenation of the two strings5+'12'; // 512
String multiplied by an integer5*'5'; // 25
Multiplication of a string (but not numeric string) and a number5*'t'; // NaN
The first operation of the expression is addition and then concatenation5+5+'2'; // 102
JSON_PRETTY
prettifies JSON contentSELECT
JSON_PRETTY(document_details)
FROM students
Note: MariaDB
does not include JSON_PRETTY
functionJSON_TYPE
takes JSON content and returns its typeSELECT
JSON_TYPE('{}'), -- returns OBJECT
JSON_TYPE('[]'), -- returns ARRAY
JSON_TYPE(NULL) -- returns NULL
JSON_ARRAY
takes parameters as array members and returns JSON string as arraySELECT
JSON_ARRAY("2020-05-25", "2030-05-18", "number", 5)
JSON_OBJECT
returns JSON string.
It takes comma separated key / value pairs as parametersINSERT INTO students (
first_name,
last_name,
gender,
points,
document_details
)
VALUES (
'Beka',
'Gelashvili',
'1',
'82',
JSON_OBJECT('issue_date', "2020-05-25", "expire_date", "2030-05-18", "number", 5)
)
number
and issue_date
keys of document_details
columnSELECT *
FROM students
WHERE 1
AND JSON_EXTRACT(document_details, '$.number') = 8
AND JSON_EXTRACT(document_details, '$.issue_date') = '2020-05-18'
ORDER BY id DESC
number
, issue_date
SELECT
document_details,
JSON_EXTRACT(document_details, '$.number'),
JSON_EXTRACT(document_details, '$.issue_date'),
JSON_UNQUOTE(JSON_EXTRACT(document_details, '$.issue_date'))
FROM students
Note: We can use JSON_UNQUOTE()
function to remove quotes around JSON string valuesdocument_details
INSERT INTO students (
first_name,
last_name,
gender,
points,
document_details
)
VALUES (
'Beka',
'Gelashvili',
'1',
'82',
'{"issue_date":"2020-05-18", "expire_date":"2030-05-18", "number":"ET2312UO"}'
);
JSON
type column for storing JSON objects / arraysALTER TABLE students
ADD COLUMN document_details JSON