Здравствуйте, как сделать один запрос к нескольким таблицам?
У меня есть 3 таблицы.
test1 test2 test3
В таблицах находятся данные "привязанные" к таблице test3
Как сделать запрос чтобы получив данные из таблицы test3 сразу же получить данные из двух других таблиц например по полю uniq?
Left join например, пример посмотри в госте джона, с телефона код не напишу
SELECT `test3`.*, `test2`.`some`, `test1`.`some_1` FROM `test3`
LEFT JOIN `test2` ON `test3`.`uniq` = `test2`.`uniq`
LEFT JOIN `test1` ON `test3`.`uniq` = `test1`.`uniq`
Как-то так
select * from t1,t2, t3 on ...
структуру таблиц напиши, и к каким полям там что привязано. ну и что и с какой таблицы нужно получить
Ребят что в данном запросе в базу не так
$query = $this->db->query("
SELECT `f`.*, `str`.*, `c`.*,
GROUP_CONCAT(c.name SEPARATOR ', ' ) namecat,
GROUP_CONCAT(c.lat_name SEPARATOR ', ' ) latnamecat,
GROUP_CONCAT(af.id_actor SEPARATOR ', ') idact,
GROUP_CONCAT(str.rus_name SEPARATOR ', ') strsname
FROM film f
LEFT JOIN actor_film af ON af.uniq_film = f.uniq
LEFT JOIN stars str ON str.id = af.id_actor
LEFT JOIN category_film cf ON cf.uniq_film = f.uniq
LEFT JOIN category c ON c.id = cf.id_category
WHERE f.uniq = '".$row['uniq']."'");
Выводит с повторениями, актеров по 2 раза повторяет, а категории по 5. В чем причина.