Мне нужна ваша помощь в создании оператора SQL, который я не могу понять.
В базе данных у меня есть четыре таблицы - файлы, папки, папки_файлы и ссылки.
У меня много файлов. Один из них называется «myFile.txt».
У меня много папок. «myFile.txt» есть в некоторых из них. Первая папка, в которой он появляется, называется «firstFolder».
У меня есть много ссылок на многие папки. Первая ссылка на "firstFolder" называется "firstLink".
Структура данных для примера будет такой:
// files
Id: 10
Name: "myFile.txt"
// folders
Id: 20
Name: "firstFolder"
// folder_files (join table)
Id: 30
Folder_Id: 20 (meaning "firstFolder")
File_Id: 1 (meaning "myFile.txt")
// links
Id: 40
Name: "firstLink"
Folder_Id: 20 (meaning "firstFolder")
ПЕРВЫЙ ВОПРОС: Как мне получить запись для «myFile.txt», а также имя и идентификатор «firstLink» (первая ссылка), запросив файл с идентификатором = 10 на основе наименьшего идентификатора папки и ссылки?
ВТОРОЙ ВОПРОС: Как мне получить запись для «myFile.txt», а также имя и идентификатор «firstLink» (первая ссылка), запрашивая все файлы на основе наименьшего идентификатора папки и ссылки?
по-другому - как мне получить первую ссылку на первую папку, содержащую "myFile.txt"?
В результате получается запись вида:
Id: 10
Name: "myFile.txt"
LinkId: 40
LinkName: "firstLink"
Спасибо!