Объединение таблиц.

Fuz

Новичок
Объединение таблиц.

Есть доска объявлений - объявления в ней настолько разные, что пришлось для каждого типа объявления делать отдельную таблицу (например, машины и недвижимость). Вопрос вот в чём - необходимо для информационных целей считать сколько всего объявлений (всех типов) хранится в базе, т.е. Нужно получить сумму всех
PHP:
select count(*) as n from cars where region=1; select count(*) as n from flats where region=1;
. Регионов куча - получаем, что надо сделать запросов кол-во регионов*кол-во типов объявления. Не сликшом ли много запросов?..можно ли упростить?
 

Fuz

Новичок
Serguitar
я догадываюсь, что можно, поэтому и пишу здесь. вопрос в другом - как?
 

Serguitar

Новичок->продвинутый
пришлось для каждого типа объявления делать отдельную таблицу
Объясни момент - у тебя типы в одной таблице, объявления в другой? Или куча таблиц с разными типами объявлений?
 

Fuz

Новичок
Serguitar
куча таблиц с разными типами объявлений.
 

Serguitar

Новичок->продвинутый
Вот тебе и ответ.
Почему бы не попрбовать сделать таблицу с типами объявлений, и таблицу с объявлениями, в одном из полей которой хранить идентификатор типа?
 

Fuz

Новичок
таблицы слиишком разные. ты не объединишь объявления о недвижимости с площадями, санузлами и т.п. с авто- объявлениями с карбюраторами, пробегом и т.п.
 

Serguitar

Новичок->продвинутый
Хорошо, может я тебя неправильно понял.
Объясни на примере в чем различие во всех этих таблицах?
На примере названий полей и того, что в них должно храниться.
 

Fuz

Новичок
различия во всем - от количества критериев до типа этих самых критериев...объединять пробовал - получается криво.
 

Serguitar

Новичок->продвинутый
Fuz
Я тебя понял. Так навскидку могу предложить такой вариант. Хотя сам не уверен, что он правильный.
Делаешь дополнительную таблицу announce_types
announce | count
В неё записываешь все типы объявлений (а лучше названия таблиц, отвечающие за конкретный тип объявлений) и количество записей в каждой. При добавлении новой - добавляешь +1, при удалении -1 там, где нужно. При выборке считаешь сумму по столбцу.
 

Fuz

Новичок
Serguitar
Да. неплохое решение. чуть больше повозиться, но намного оптимальнее так и делать чем отправлять немыслемое кол-во запросов.....спасибо. так и сделаю.
 
Сверху