2013-09-25 6 views
0

Я пытаюсь выбрать группу строк из таблицы и порядка группой подзапросов:MySQL Заказывайте Сумма подзапросов

SELECT *, 
(SELECT Count(id) > 0 FROM places_users WHERE places_id = places.id) AS verified_bool, 
(SELECT Count(id) > 0 FROM places_services WHERE places_id = places.id) AS services_bool 
FROM places 
ORDER BY sum(verified_bool + services_bool) DESC 
LIMIT 0, 10 

Но это только возвращает 1 результат. Подзапросы проверяют другие таблицы, которые связаны с исходной строкой. Мне нужно только проверить, что эти другие таблицы имеют как минимум 1 результат, поэтому я использую логическое значение, а затем пытаюсь подытожить подзапросы 0 или 1 и упорядочить исходные результаты от тех, у кого наибольшая сумма, с наименьшими.

ответ

0

Вопрос был с суммы в порядке по статье:

SELECT *, 
(SELECT Count(id) > 0 FROM places_users WHERE places_id = places.id) AS verified_bool, 
(SELECT Count(id) > 0 FROM places_services WHERE places_id = places.id) AS services_bool 
FROM places 
ORDER BY (verified_bool + services_bool) DESC 
LIMIT 0, 10 
Смежные вопросы