2015-02-27 2 views
0

У меня есть эти три запроса:объединить три MySql запросов в один и вернуть один объект JSON

$sql = "select count(distinct f_home) as home_count_total from cr_test;" ; 

$sql2 = "select distinct f_home, count(f_home) as home_count from cr_test group by f_home;" ; 

// псевдокод ниже

$sql3 = "select distinct f_home, round(count(f_home)/<home_count_total FROM FIRST QUERY>*100,2) as CountOf from cr_test group by f_home;" ; 

Что мне нужно один объект JSON (который я могу получить через PDO, поэтому не беспокойтесь об этом) с тремя частями данных для каждой записи: f_home, home_count и CountOf.

Как объединить их в один запрос, чтобы я мог вернуть один объект JSON?

+1

Похоже, вы должны научиться подзапросов. –

+0

Притворись, я ничего об этом не знаю ... ты можешь меня начать? Я просмотрел документацию, но не могу понять, как обратиться к моему делу. – jonmrich

+0

Возможно, вы можете настроить скрипт SQL и дать нам ссылку на работу? –

ответ

1

У попробовать с этим запросом:

SELECT 
    f_home, 
    COUNT(f_home) AS home_count, 
    ROUND(COUNT(f_home)/home_count_total * 100, 2) AS CountOf 
FROM 
    cr_test, 
    (SELECT COUNT(DISTINCT f_home) AS home_count_total FROM cr_test) t 
GROUP BY f_home 
+0

Работал отлично! Спасибо. – jonmrich

Смежные вопросы