Множественное ЛЕВОЕ СОЕДИНЕНИЕ (МС Access VB.NET )

#vb.net #ms-access #left-join

#vb.net #ms-доступ #левое соединение

Вопрос:

Я застрял в запросе.

Таблицы:

В таблице «Избранное» хранятся избранные статьи (продукты).

в таблице «артикулы» хранятся все доступные товары.

в таблице «поставщики» хранятся все поставщики этих продуктов. Связь между продуктами и поставщиками хранится в таблице «artPRov».

В таблице «счета» хранятся покупки.

ОТНОШЕНИЯ

ОТНОШЕНИЯ

ЗАПРОС

выберите избранное.*,статьи.статья,artProv.LastCost, счет-фактура.idInv, providers.name ИЗ ((((избранное ОСТАЛОСЬ ПРИСОЕДИНЯЙТЕСЬ К статьям О избранном.idArt=статьи.idArt) ПОСТАВЩИКИ ЛЕВЫХ СОЕДИНЕНИЙ В избранном.idProv=providers.idProv) ЛЕВОЕ СОЕДИНЕНИЕ artProv В избранном.idArt=artProv.idArt И artProv.idProv=providers.idProv) НАКЛАДНЫЕ НА ЛЕВОЕ СОЕДИНЕНИЕ В избранных.idInv=счета-фактуры.idInv)

ошибка соединения:

 > LEFT JOIN artProv ON favourites.idArt=artProv.idArt AND
> artProv.idProv=providers.idProv
  

Комментарии:

1. Ваш вопрос немного неясен. Я не вижу ошибки в вашем синтаксисе. Поэтому я не понимаю, что не так и что вы предпочли бы в качестве лучшего результата. Если бы вы могли быть более ясны в этом, я думаю, вы получили бы решение.

2. Была LFET JOIN providers ON favourites.idProv=providers.idProv ли ошибка ввода здесь на SO? Access раздражает, требуя круглых скобок вокруг соединений — di вы создаете соединения в конструкторе, чтобы проверить эту часть синтаксиса? Обратите внимание, вы можете отредактировать свой собственный пост, чтобы исправить LFET, если это не проблема.

3. @tgolisch: если я выполню этот запрос из Access, отобразится окно сообщения с такой ошибкой: «Выражение соединения не поддерживается». Я хочу отобразить все статьи, хранящиеся в таблице «избранное». Если в этих статьях связаны счета-фактуры (таблица «счета-фактуры») и поставщики (таблица «поставщики»), я тоже хочу отобразить.

4. @phaedra: извините, обновил сообщение.

5. Вы пытались добавить еще одно левое соединение из artProv to providers ?