Форум: "Базы";
Текущий архив: 2005.11.20;
Скачать: [xml.tar.bz2];
ВнизAccess. JOIN более 2 таблиц Найти похожие ветки
← →
msguns © (2005-10-06 12:26) [0]Конструкция типа
SELECT M.ID, M.ID1, M.ID2, D1.NAME, D2.NAME
FROM MASTER M
LEFT JOIN DETAL1 D1 ON (M.ID1=D1.ID)
LEFT JOIN DETAL2 D2 ON (M.ID2=D2.ID)
в акцесе не катит.
В справке по джету написано
Операции LEFT JOIN, RIGHT JOIN
Объединяют записи исходных таблиц при использовании в любом предложении FROM.
Синтаксис
FROM таблица_1 [ LEFT | RIGHT ] JOIN таблица_2
ON таблица_1.поле_1 оператор таблица_2.поле_2
Выходит, что нельзя объединить более 2-х таблиц ?
Можно, конечно, через вложенные запросы, но, если полей много, запрос получается монстроидальным.
Как красивше ?
Спасибо за помощь и советы
← →
sniknik © (2005-10-06 12:28) [1]синтаксис Access отличается от других sql серверов см. справку. (в другом твоем вопросе писал где искать)
← →
isasa © (2005-10-06 12:33) [2]Access. Конструктор запросов???
← →
msguns © (2005-10-06 12:33) [3]>sniknik © (06.10.05 12:28) [1]
>синтаксис Access отличается от других sql серверов
Это я давно уже понял ;)))
>см. справку.
Все глаза проглядел ;))
Т.е. получается, что джойнить можно только 2 таблицы, эге ж ?
← →
Курдль © (2005-10-06 12:42) [4]А если извратиться типа :
select * from D1 right outer join M on ... left outer join D2 on ...
← →
Romkin © (2005-10-06 12:58) [5]Скорее, по-старому:
SELECT M.ID, M.ID1, M.ID2, D1.NAME, D2.NAME
FROM (MASTER M LEFT JOIN DETAL1 D1 ON M.ID1=D1.ID)
LEFT JOIN DETAL2 D2 ON M.ID2=D2.ID
← →
msguns © (2005-10-06 12:59) [6]>isasa © (06.10.05 12:33) [2]
>Конструктор запросов???
Ну конечно же !!!
Решение:
SELECT M.ID, M.ID1, M.ID2, D1.NAME AS D1NAME, D2.NAME AS D2NAME
FROM
(M LEFT JOIN D1 ON (M.ID1=D1.ID))
LEFT JOIN D2 ON (M.ID2=D2.ID)
и хоть надцать таблиц !
А все потому, что считаю себя настолько "грамотным", что вообще не пользуюсь конструктором, а сразу перехожу в сиквель-моду ;))
Спасибо большое !
← →
Seg (2005-10-06 13:58) [7]А что такое "конструктор запросов"?
← →
isasa © (2005-10-06 15:12) [8]:)
Окно "База данных" -> Закладка "Запросы"+Кнопка "Конструктор" ="Конструктор запросов""
← →
msguns © (2005-10-06 15:18) [9]Правда, к нему надо приноровиться ;))
В частности, при создании связанных запросов большое значение имеет последовательность выбора таблиц. За ID таблиц конструктор хватается мертвой хваткой ;). Так, что потом без правки "ручками" в сиквел-моде не обойтись ;(
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2005.11.20;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.042 c