|
Внешнее присоединение LEFT JOIN
|
|||
---|---|---|---|
#18+
Здравствуйте, уважаемые форумчане! Суть такова. Есть база с таблицами работ- Work, материалов-Mat и привязки материалов к определенным работам -WorkMat. Связь между Mat и Work через WorkMat многие-ко-многим. Т.е. для некоторых работ есть материалы и любой материал может использоваться для разных работ. Пример в Access вложен с примером моего пробного запроса. Поля Работы (Work) - ID_Work(ключ), Name, Union Поля Материалов (Mat) - ID_Mat(ключ), Name, Union Связывающая таблица (WorkMat) - ID_Work(ключ), ID_Mat(ключ), Rashod (Расход материала для конкретной работы) Связь один-ко-многим Work.ID_Work -> WorkMat.ID_Work Связь один-ко-многим Mat.ID_Mat -> WorkMat.ID_Mat Нужно сделать запрос, который бы брал таблицу материалов (Mat) и присоединял к ней столбцы из таблицы WorkMat. Но нужно, чтобы в присоединямых столбцах брались только записи для ОДНОЙ работы, т.е. нужен фильтр, например WorkMat.ID_Work=2 Запрос пока в таком виде: Код: sql 1. 2. 3.
что и как мне нужно прикрутить, что бы заработало в Access. Пробовал после JOIN подзапрос сделать, но, видимо что-то неправильно делаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.09.2016, 20:29 |
|
Внешнее присоединение LEFT JOIN
|
|||
---|---|---|---|
#18+
А почему LEFT JOIN? когда логика событий требует связывания внутреннего... ... |
|||
:
Нравится:
Не нравится:
|
|||
20.09.2016, 23:01 |
|
Внешнее присоединение LEFT JOIN
|
|||
---|---|---|---|
#18+
И в чем логика, если мне нужно к таблице Mat присоединить таблицу WorkMat. Таблица Mat должна остаться как есть. Из таблицы WorkMat надо выбрать строки только одной работы и подтянуть к таблице Mat/ Во вложении пример. Упростил до предела. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.09.2016, 23:19 |
|
Внешнее присоединение LEFT JOIN
|
|||
---|---|---|---|
#18+
Полной ясности нет, но предположу, что нужен запрос по всем записям таблицы Mat и выбранным по ID_Work данным WorkMat Код: sql 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
21.09.2016, 00:52 |
|
|
start [/forum/topic.php?fid=45&tid=1613135]: |
0ms |
get settings: |
10ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
39ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
2ms |
others: | 360ms |
total: | 485ms |
0 / 0 |