Select inner join
2
Ecть 2 таблицы
movie
id name description_id year add_date category_id
и
descriptions
id name
когда я делаю
SELECT * FROM `movie` INNER JOIN descriptions on movie.description_id = descriptions.id
то получаю таблицу с 2-мя name.
Как обращаться к этим разным полям, или как сделать в запросе чтобы одно из полей называлось name1 ?
4 ответов
3
Если я правильно понял вопрос, попробую ответить: Нужно использовать alias, чтобы можно было работать с двумя sql-таблицами, которые имеют одинаковые поля.
Пример:
SELECT movie.name as name1, descriptions.name as name2 FROM `movie` INNER JOIN descriptions on movie.description_id = descriptions.id
2
Cпасибо
2
При этом запросе
SELECT movie.name as name1, descriptions.name as name2 FROM `movie` INNER JOIN descriptions on movie.description_id = descriptions.idполучается таблица из 2х полей name1, name2 а как сделать чтобы все другие поля присутствовали ?
3
В SELECT нужно добавить поля которые нужны, например:
SELECT movie.name as name1, descriptions.name as name2, movie.id as movie_id, descriptions.kakoe_to_pole, movie.kakoe_to_pole FROM `movie` INNER JOIN descriptions on movie.description_id = descriptions.id
т.е. когда запрос из джойнами, нужно указывать вручную нужные поля в select.