[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Помогите составить запрос
mrmaloy
Доброго времени суток.
Помогите пожалуйста составить запрос к mysql.

есть 5 таблиц связанных между собой по id.

Сейчас работает примерно такой скрипт

select id from table 1
while($row){
select from table 2 where table1ID=id
while($row2){
select from table 3 where table2ID=id
while($row3){
и т д...
}
}
}


на выходе ~5-25 строк из таблицы номер 5. все это довольно заметно подгружает сервер и занимает значительное время.

Думаю это можно как то реализовать одним запросом.
Помогите пожалуйста



Спустя 48 минут, 10 секунд (9.10.2011 - 12:54) Kuliev написал(а):
mrmaloy


SELECT * FROM `table1`
LEFT JOIN `table2` ON `table1`.`id` = `table2`.`id`
WHERE .....

Спустя 10 минут, 29 секунд (9.10.2011 - 13:05) mrmaloy написал(а):
Цитата (Kuliev @ 9.10.2011 - 13:54)
mrmaloy


SELECT * FROM `table1`
LEFT JOIN `table2` ON `table1`.`id` = `table2`.`id`
WHERE .....

Из двух таблиц понятно, а дальше то как? Как подключить 3ю таблицу основываясь на дынных полученных из 2й таблицы?
-----
При этом не забываем.. что из второй таблицы мы можем получить 5 строк и для каждой нужно выбрать строки из 3й таблицы

Спустя 1 час, 47 минут, 55 секунд (9.10.2011 - 14:53) killer8080 написал(а):
так?
SELECT * FROM `table1`
LEFT JOIN `table2` USING (`id`)
LEFT JOIN `table3` USING (`id`)
LEFT JOIN `table4` USING (`id`)
LEFT JOIN `table5` USING (`id`)
...


_____________
<td></td>...<td></td>...<td></td>... тихо стучали колеса поезда в ночной тишине.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.