Текущий архив: 2004.06.13;
Скачать: CL | DM;
ВнизРасскажите как правильно пишеться inner Join в accsess Найти похожие ветки
← →
SergeyI © (2004-05-21 17:07) [0]Уважаемые All, все время писал под MS Sql,а по теперешней задачи
надо написать в под Accsess как правильно переписать запрос чтобы работало в нёмSelect t1.f1,t2.f1,t3.f1
From t1 inner join t2 on t1.idt2 = t2.id
inner join t3 on t1.idt2 = t3.id
в MS SQL такая конструкция работает в Accsess нет - ошибка в операторе JOIN
← →
Sandman25+1 (2004-05-21 17:10) [1]Там надо скобки расставить, только не помню точно как. Вроде
Select t1.f1,t2.f1,t3.f1
From (t1 inner join t2 on t1.idt2 = t2.id)
inner join t3 on t1.idt2 = t3.id
← →
Johnmen © (2004-05-21 17:11) [2]Видимо не переваривает два и.джоина. А синтаксис соответствует SQL92.
Просто пиши вместо нихFrom t1, t2, t3
Where (t1.idt2 = t2.id ) and (t1.idt2 = t3.id)
← →
sniknik © (2004-05-21 17:12) [3]Чтобы связать несколько предложений ON в инструкции JOIN, используйте следующий синтаксис:
SELECT поля
FROM таблица_1 INNER JOIN таблица_2
ON таблица_1.поле_1 оператор таблица_2.поле_1 AND
ON таблица_1.поле_2 оператор таблица_2.поле_2) OR
ON таблица_1.поле_3 оператор таблица_2.поле_3)];
Операции JOIN могут быть вложенными; в таком случае используйте следующий синтаксис:
SELECT поля
FROM таблица_1 INNER JOIN
(таблица_2 INNER JOIN [( ]таблица_3
[INNER JOIN [( ]таблица_X [INNER JOIN ...)]
ON таблица_3.поле_3 оператор таблица_X.поле_X)]
ON таблица_2.поле_2 оператор таблица_3.поле_3)
ON таблица_1.поле_1 оператор таблица_2.поле_2;
Операции LEFT JOIN или RIGHT JOIN могут быть вложены в операцию INNER JOIN, но операция INNER JOIN не может быть вложена в LEFT JOIN или RIGHT JOIN.
← →
SergeyI © (2004-05-21 17:15) [4]спасибо за ответы
и вдогонку подскажите аналог функции isNull(поле,Значение)
← →
sniknik © (2004-05-21 18:44) [5]iif(isNull(поле),Значение, поле)
Страницы: 1 вся ветка
Текущий архив: 2004.06.13;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.035 c