Подсчет записей из разных таблиц
Вопрос больше об оптимизации запроса. Дело в том, что пользователь может добавлять разного типа публикации (новости, статьи, заметки, фото). Все это хранится по разным таблицам.
Каков будет оптимальный запрос на подсчет публикаций каждого типа?
UNION ALL
не подходит, так как в таблицах разное число колонок.
Сделал так, не знаю, насколько быстрый вариант:
SELECT (
SELECT IF(`Count` IS NULL, 0, `Count`)
FROM likes
WHERE IdNote = 600
) AS likes, (
SELECT COUNT( * )
FROM commenttousers
WHERE CommentToUsersIdToUser =600
) AS reviews
FROM likes, commenttousers
GROUP BY CommentToUsersIdToUser
LIMIT 0 , 30
В моем примере почему-то не работает условие IF
.
Источник: Stack Overflow на русском