MySql версия 5.7.12
запрос
SELECT JSON_OBJECT(unix_timestamp(created_time),JSON_OBJECT(status,cast(concat(count(status))as char))) FROM table_name where status='NEW' and unix_timestamp(created_time) between 1512543400 and 1532716199 GROUP BY unix_timestamp(created_time);
Результат
+--------------------------------------------------------------------------------------------------+
| JSON_OBJECT(unix_timestamp(created_time),JSON_OBJECT(status,cast(concat(count(status))as char))) |
+--------------------------------------------------------------------------------------------------+
| {"1526447587": {"NEW": "1"}} |
| {"1530170666": {"NEW": "1"}} |
+--------------------------------------------------------------------------------------------------+
Я хочу, чтобы unquote значение "1", как показано ниже, как это сделать?
{"1526447587": {"NEW": 1}}
Просто удалите бросок на char
:
SELECT JSON_OBJECT(UNIX_TIMESTAMP(NOW()), JSON_OBJECT('hello', 312)) AS output
FROM dual
Эти результаты:
{"1532691464": {"hello": 312}}
JSON_OBJECT(status, count(status))
char
, т.е. используетеJSON_OBJECT(status, count(status))
?