Помогите разобраться с запросом, объединяю несколько таблиц. Есть в таблице posts две колонки mark1 и mark2, где хранятся id меток из таблицы marks, откуда нужно получить имена меток.
CODE ( SQL):
скопировать код в буфер обмена
SELECT posts.id, posts.cat, posts.name, users.name AS user_name, cats.name AS cat_name, marks.name AS mark1_name, marks.name AS mark2_name FROM posts INNER JOIN users ON posts.user=users.id INNER JOIN cats ON posts.cat=cats.id INNER JOIN marks ON posts.mark1=marks.id OR posts.mark2=marks.id WHERE posts.id=55555
В mark2_name должно попасть имя второй метки, но попадает имя mark1_name.
Или тыкните меня в нормальное объяснение JOIN, сам ничего толкового в сети не нашёл.(Отредактировано автором: 23 Декабря, 2012 - 12:47:34)
|