выборка из нескольких таблиц Mysql

  • Автор темы aks
  • Дата начала
Статус
Закрыто для дальнейших ответов.
A
#1
При выборке из нескольких таблиц результат получаю не тот что в консоли...абсолютно. Вот такой вот запрос:
Код:
Select publications.id, publication_type.type, publication_name.name, publications.pages, publications.publication_date
from publications, publication_type, publication_name
where publications.type=publication_type.id and publications.name=publication_name.id
publication_type.type, publication_name.name - это строки. а выводятся значения publication_type.id, publication_name.id. Не понимаю в чем дело, в консоли все нормально, как и должно быть. Подскажите пожалуйста.

Вывод делаю так:
Код:
while ($line=$sth->fetchrow_arrayref)
{
print "<tr>";
print "<td width=\"10%\">$$line[0]</td>";
print "<td width=\"30%\">$$line[1]</td>";
print "<td width=\"30%\">$$line[2]</td>";
print "<td width=\"15%\">$$line[3]</td>";
print "<td width=\"15%\">$$line[4]</td>";
print "</td>";
}
 
V

Vovochka

#2
Чел... Твой SQL - плох...

Запрос должен быть где-то таким:

Код:
SELECT p.id, p_t.type, p_n.name, p.pages, p.publication_date
FORM publications AS p
INNER JOIN publication_type AS p_t ON p.type = p_t.id
INNER JOIN publication_name AS p_n ON p_n.id = p.name
 
Статус
Закрыто для дальнейших ответов.