Я заинтересован в экспорте подмножества значений из базы данных MySQL в файл в формате JSON на диске.
Я нашел ссылку, которая говорит о возможном способе сделать это: http://www.thomasfrank.se/mysql_to_json.html
... но когда я использую метод с этой страницы, он работает, но с двумя проблемами:
1) Возвращает только около 15 результатов, последний из которых резко обрезается (не завершен). Мой стандартный запрос на это возвращает около 4000 результатов, когда я просто запускаю его как SELECT name, email FROM students WHERE enrolled IS NULL
Но когда я запускаю его как:
SELECT
CONCAT("[",
GROUP_CONCAT(
CONCAT("{name:'",name,"'"),
CONCAT(",email:'",email,"'}")
)
,"]")
AS json FROM students WHERE enrolled IS NULL;
... как описано в ссылке, он возвращает только (как я уже говорил) 15 результатов. (Между прочим, я проверил эти результаты против 4000, которые я должен получить, и эти 15 совпадают с первыми 15 из 4000)
2) Кажется, в настоящий файл включены «escape» символы, когда я добавляю INTO OUTFILE '/path/to/jsonoutput.txt' FIELDS TERMINATED BY ','
в конец этого запроса. Таким образом, запятые в конечном итоге выглядят как '\', когда, очевидно, я просто хотел бы получить запятые без \.
Любые идеи о том, как получить правильный вывод JSON из MySQL? (Либо с помощью этого метода, либо каким-либо другим методом)?
Спасибо!