Эффективный способ передачи JSON из PHP

Вот JSONArray у меня есть:

[{"items_id":"13","total":"1"}, {"items_id":"216","total":"0"},{"items_id":"16","total":"1"}] 

Иногда каждый объект имеет более двух свойств (атрибутов?). Но я просто показываю принцип здесь. В Java мне нужно всего лишь захватить «итого». Мне не нужно «items_id».

Я предполагаю, что это проявляется, потому что здесь мой MySQL-запрос в PHP:

 $count_query_result=mysql_query(" SELECT items.items_id, COUNT(ratings.item_id) AS total FROM `items` LEFT JOIN ratings ON (ratings.item_id = items.items_id) WHERE items.cat_id = '{$cat_id}' AND items.spam < 5 GROUP BY items_id ORDER BY TRIM(LEADING 'The ' FROM items.item) ASC;"); 

Вот мой вывод JSON (я только показал один из трех запросов выше):

 print(json_encode(array($output,$output2,$output3))); 

Мне нужно только три свойства, закодированные в JSON (по одному в каждой из трех выходных переменных). Я хочу, чтобы свойства «total», «rate» и «item».

Итак, мой вопрос: могу ли я избавиться от ненужного свойства items_id? Или мне даже НУЖНО? (Я знаю, что мне нужно это в SQL, чтобы заставить запрос работать, но как я могу удалить его в JSONArray?)

Я думаю, если у меня есть список с сотнями или тысячами предметов, я могу сэкономить половину пространства (и время?), Только выдав мне свойство JSON, которое мне нужно – это правильно?

Изменить : Больше кода по запросу:

 while($row=mysql_fetch_assoc($count_query_result)) $output[]=$row; while($row=mysql_fetch_assoc($average_query_result)) $output2[]=$row; while($row=mysql_fetch_assoc($items_query_result)) $output3[]=$row; print(json_encode(array($output,$output2,$output3))); mysql_close(); в while($row=mysql_fetch_assoc($count_query_result)) $output[]=$row; while($row=mysql_fetch_assoc($average_query_result)) $output2[]=$row; while($row=mysql_fetch_assoc($items_query_result)) $output3[]=$row; print(json_encode(array($output,$output2,$output3))); mysql_close(); в while($row=mysql_fetch_assoc($count_query_result)) $output[]=$row; while($row=mysql_fetch_assoc($average_query_result)) $output2[]=$row; while($row=mysql_fetch_assoc($items_query_result)) $output3[]=$row; print(json_encode(array($output,$output2,$output3))); mysql_close(); в while($row=mysql_fetch_assoc($count_query_result)) $output[]=$row; while($row=mysql_fetch_assoc($average_query_result)) $output2[]=$row; while($row=mysql_fetch_assoc($items_query_result)) $output3[]=$row; print(json_encode(array($output,$output2,$output3))); mysql_close(); 

Используйте JSONObject для синтаксического анализа строки. Просто поставьте строку в качестве параметра в конструкторе JSONObject.

 jObject = new JSONObject(myString); 

После того, как вы выберете все переменные из JSONObject.

Для стороны php:

Используйте json_decode end json_encode для переключения между json и смешанной переменной. Когда у вас есть смешанная переменная, удалите ненужное вам содержимое и переведите его обратно в json.

http://php.net/unset

Отмените ненужные значения, затем выведите json

Я не думаю, что вам это нужно в вашем SQL-запросе. Если вам нужны данные из базы данных только в контексте запроса, вам не нужно ее SELECT . Попробуйте сделать только:

SELECT COUNT(*) FROM ...