SQL-запрос для объединения трех таблиц

0

Я сделал это в далеком прошлом, но теперь я просто не могу понять это.

У меня три таблицы, одна из которых служит справочной или справочной таблицей, чтобы избежать дублирования данных. Ниже представлена основная структура: Название таблицы: Column1, Column2...

Tasks : ID , Description
Tags : ID , TagID , TaskID
TagNames : ID , Title

Я хочу создать запрос, который будет возвращать все записи таблицы 3, но вместо идентификаторов (цифр), чтобы получить соответствующий заголовок и описание.

Это один из запросов, которые я пробовал

SELECT Tasks.Description, TagNames.Title 
FROM (Tags INNER JOIN Tasks ON Tags.TaskID = Tasks.ID) 
INNER JOIN TagNames ON TagNames.ID = Tags.TagID

Конечный результат:

"Task 1", "Home":
"Task 1", "PC":
"Task 2", "Home":

Я пробовал и пытался, но я всегда получаю "несоответствие типа в выражении" или некоторые такие

Я уверен, что это что-то супер простое, но для меня жизнь я не могу понять.

Спасибо за любую помощь

Теги:

2 ответа

0
Лучший ответ
 SELECT Tasks.Description, TagNames.Title 
 FROM Tags tags, Tasks tasks,TagNames tagNames
 WHERE tags.TaskID = tasks.ID AND
 tagNames.ID = tags.TagID
0

Удалить скобки из вашего первого внутреннего соединения?

SELECT 
Tasks.Description, 
TagNames.Title 
FROM Tags 
INNER JOIN Tasks ON Tags.TaskID = Tasks.ID
INNER JOIN TagNames ON TagNames.ID = Tags.TagID
  • 0
    При запуске в Access 2018 появляется следующее сообщение об ошибке: «Синтаксическая ошибка (отсутствует оператор) в выражении запроса« TAgs.TaskID = Tasks.ID INNER JOIN. перед вторым "INNER JOIN"

Ещё вопросы

Сообщество Overcoder
Наверх
Меню