и количество домов запросом
"street.id, street.title, street_type.title as street_type_title, count(building.id) as building_count from street inner join street_types on street.street_type = street_type.id left join building on building.street = street.id group by street.id, street_type.id"
а как сюда добавить поиск по названию улицы? Пробовал
"street.id, street.title, street_type.title as street_type_title, count(building.id) as building_count from street where street.title like '%' inner join street_types on street.street_type = street_type.id left join building on building.street = street.id group by street.id, street_type.id"
но ругается на начало inner join. Подскажите где косяк? Заранее спасибо
p.s. а если кто умеет в sqlalchemy и поможет переписать первый запрос на ее синтаксис - тому огромное спасибо )
select ... street.id, street.title, street_type.title as street_type_title, count(building.id) as building_count from street inner join street_types on street.street_type = street_type.id left join building on building.street = street.id where street.title like '%' group by street.id, street_type.id JOIN - это часть фразы FROM, они должны идти вместе GROUP BY только правильно напиши.
Спасибо. С таким GROUP BY работает корректно, пробовал менять - все падало. Не подскажешь куда именно смотреть?
Все поля, что указаны в списке вывода, и не находятся под агрегирующими функциями, должны быть указаны в GROUP BY
а, да, сорри, я стер street_type.id из select, чтобы уменьшить запрос и лучше воспринялось здесь
Обсуждают сегодня