Я работаю над объединением содержимого моих таблиц, я пытаюсь объединить две таблицы, все еще получая результаты из таблицы 'фильмы', даже если в таблице 'users_ratings' нет соответствующей записи.Но, похоже, не работает, я получаю только один результат.
- таблица фильмов (100 записей)
CREATE TABLE IF NOT EXISTS `movies` (
`ID` int(20) NOT NULL,
`title_name` vachar(255) NOT NULL,
`creation_date` datetime NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
- таблица оценок (1 запись)
CREATE TABLE IF NOT EXISTS `users_ratings` (
`ID` int(20) NOT NULL,
`user_id` bigint(20) NOT NULL,
`type_id` bigint(20) NOT NULL,
`type_name` vachar(255) NOT NULL,
`score` int(11) NOT NULL,
`creation_date` datetime NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
- My Query
SELECT name_table.*, ur.type_id, count(ur.type_id) vote_count
FROM `movies` name_table
left JOIN users_ratings ur ON name_table.id = ur.type_id
WHERE ur.type_name= 'movies'
GROUP BY ur.type_id
Order BY vote_count DESC
- Результаты запроса
ID title_name creation_date type_id vote_count
1 Avatar 2014-05-20 00:00:00 1 1
- Результаты, которые я пытаюсь получить (Должен ли я получить 100 записей)
ID title_name creation_date type_id vote_count
1 Avatar 2014-05-20 00:00:00 1 1
2 Avengers 2014-05-20 00:00:00 NULL NULL
3 Ant-Man 2014-05-20 00:00:00 NULL NULL
4 Jurassic World 2014-05-20 00:00:00 NULL NULL
5 Rampage 2014-05-20 00:00:00 NULL NULL
6 Black Panther 2014-05-20 00:00:00 NULL NULL
7 Tombe Raider 2014-05-20 00:00:00 NULL NULL
8 Deadpool 2014-05-20 00:00:00 NULL NULL
9 Pacific Rim 2014-05-20 00:00:00 NULL NULL