дорогой мне нужно получить запрос из 3 таблиц Я пытаюсь показать, как мне нужно изображение на картинке надеюсь, что это объяснит все.sql запрос из 3 таблиц
alt text http://img530.imageshack.us/img530/3457/tables.jpg
дорогой мне нужно получить запрос из 3 таблиц Я пытаюсь показать, как мне нужно изображение на картинке надеюсь, что это объяснит все.sql запрос из 3 таблиц
alt text http://img530.imageshack.us/img530/3457/tables.jpg
Вы должны использовать inner joins
SELECT a.item_id, c.menu_text, b.smenu_text, a.Item_Name
from a
inner join b
on a.submenu_id =b.smenu_id
inner join c
on b.menu_id=c.menu_id
SELECT a.item_id, c.menu_text, b.smenu_text, a.Item_Name
FROM a,b,c
WHERE a.submenu_Id = b.smenu_Id
AND b.menu_ID = c.menu_ID
@Shantanu поскольку по умолчанию в Oracle, MySQL и MSSQL список таблиц, разделенных '' трактуется как трактире er присоединяется. (То же самое верно для sqlite и postgres) –
Не все базы данных системы поддерживают его, но с использованием JOIN и будет лучше.
Использование мест для операций присоединения устарело в течение длительного времени ... Если у вас есть движок базы данных, я предлагаю вам переключиться на JOINs, что делает этот вид операций намного проще и понятнее ... а иногда и больше эффективным, а также ...
Больше информации здесь: http://en.wikipedia.org/wiki/Join_%28SQL%29#Inner_join
Не будьте так мелодраматичны. Конечно, кросс-соединения +, где будет работать, как стандартизованный синтаксис SQL, он предшествует JOIN. Для удобства чтения с человеком вы должны использовать новый синтаксис JOIN, так как он также широко поддерживается, но любые утверждения о переносимости или производительности являются наячными. – Recurse
Вы слишком молоды, чтобы помнить время, когда 'JOIN' не существовало, и', 'был единственным способом. Я думаю, '' 'все еще поддерживается повсюду. – pascal
Википедия согласна со мной (нами?), Что две формы эквивалентны. У вас есть образец содержимого для a & b, чтобы продемонстрировать разницу? http://en.wikipedia.org/wiki/Join_%28SQL%29#Inner_join – pascal