wildarp
Новичок
Какойто мега запрос получается 
Существует несколько таблиц
1. city с полями id и Name
2. owner c полями id, nick
3. level c полями id, name
4. tip c полями id, name
и существует основная таблица
5. common c полями id, city_id, owner_id, level_id, tip_id
Задача в результате получить все значения из таблицы COMMON и все значения полей NAME из других таблиц соответственно значениям id в основной таблице у меня получилось так, но думаю что это слишком огромный запрос как его улучшить?
SELECT a.id, a.tip_id, a.level_id, city_id, a.owner_id, b.id AS owner_b, b.nick AS own_nick, c.id AS id_city, c.Name as city_name, d.id AS tip_id, d.name AS tip_name FROM common a LEFT JOIN owner b ON ( b.id = a.owner_id ) LEFT JOIN city c ON (a.city_id = c.id) LEFT JOIN tip d ON (a.tip_id=d.id) ORDER by id;
Вобщем что-то слишком много LEFT JOIN получается, или просто подскажите так оно и должно быть?
Спасибо.

Существует несколько таблиц
1. city с полями id и Name
2. owner c полями id, nick
3. level c полями id, name
4. tip c полями id, name
и существует основная таблица
5. common c полями id, city_id, owner_id, level_id, tip_id
Задача в результате получить все значения из таблицы COMMON и все значения полей NAME из других таблиц соответственно значениям id в основной таблице у меня получилось так, но думаю что это слишком огромный запрос как его улучшить?
SELECT a.id, a.tip_id, a.level_id, city_id, a.owner_id, b.id AS owner_b, b.nick AS own_nick, c.id AS id_city, c.Name as city_name, d.id AS tip_id, d.name AS tip_name FROM common a LEFT JOIN owner b ON ( b.id = a.owner_id ) LEFT JOIN city c ON (a.city_id = c.id) LEFT JOIN tip d ON (a.tip_id=d.id) ORDER by id;
Вобщем что-то слишком много LEFT JOIN получается, или просто подскажите так оно и должно быть?
Спасибо.