У меня есть таблица клиентов и 100 000 записей в ней.
А также у клиентов есть много связанных таблиц, где хранятся связанные данные.
Мой запрос выглядит так:
SELECT COUNT(DISTINCT `clients2`.`id`)
FROM `clients2` as `clients2`
LEFT OUTER JOIN `users` as `users`
ON ( `clients2`.`user_id`=`users`.`id`
and users.status!=5
and clients2.status!=5
)
LEFT OUTER JOIN `private_data` as `privateData`
ON ( `users`.`person_id`=`privateData`.`id`
and clients2.status!=5
)
Это только 2 соединения, но мой реальный запрос имеет 5-7 соединений. И это очень медленно с 100 000 записей. Около 0,5 сек
Моя база данных очень нормализована. И кажется, что мне нужно денормализовать это сейчас.
Или, может быть, кто-нибудь может порекомендовать хорошее решение?