SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 29.06.2012 10:35:58

ERROR404
Участник
Зарегистрирован: 29.06.2012
Сообщений: 2

Сложный SQL запрос из простых таблиц

Добрый день, как пользователь СУБД MySQL я новичок. В момент проектирования простенькой базы я столкнулся с проблемой написания корректного запроса, надеюсь на помощь старожил.
Итак у меня есть 2 таблицы REPORT и USER.
REPORT имеет следующие столбцы:
ID | Descript | UserID1 | UserID2 ....
1 | text | 1 | 2 ...
USER имеет следующие столбцы:
ID | Name | ...
1| Dmitriy | ...
2| Ivan| ...

Необходимо делать выборку данных из таблицы REPORT таким образом, чтобы в результате вместо UserID1, ..., UserIDn получали Имена пользователей.
Разумеется простейшим запросом тут не обойдешься.

SELECT ID, Descript, UserID1, UserID2 FROM REPORT WHERE  UserID1 = 1

А в результате получали вместо голой таблицы
ID | Descript | UserID1 | UserID2 ....
1 | text | Dmitriy | Ivan ...

Надеюсь на вашу помощь! Прошу в googl не пинать, он хоть дядька и умный но на не грамотные вопросы ответы не дает.
P.S. Я слышал про JOIN но не знаю как его применить к моему случаю, так как 2ой JOIN одной и той же таблицы не получается.

Отредактированно ERROR404 (29.06.2012 10:54:49)

Неактивен

 

#2 29.06.2012 12:18:27

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Сложный SQL запрос из простых таблиц

SELECT ID, Descript, u1.name, u2.name FROM REPORT t join `user` u1 on t.UserID1=u1.id join `user` u2 on on t.UserID2=u2.id WHERE  t.UserID1 = 1;


http://dev.mysql.com/doc/refman/5.5/en/join.html

Неактивен

 

#3 29.06.2012 13:40:55

ERROR404
Участник
Зарегистрирован: 29.06.2012
Сообщений: 2

Re: Сложный SQL запрос из простых таблиц

Огромное спасибо, за то что не бросили в трудную минут.

Отредактированно ERROR404 (29.06.2012 13:41:40)

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson