SQLite3 и "каскадный" SELECTion - PullRequest
       10

SQLite3 и "каскадный" SELECTion

0 голосов
/ 04 января 2011

У меня есть родительская таблица и дочерняя таблица, связанные с родительской таблицей по некоторой ССЫЛКЕ.

Предположим, я выполняю инструкцию SELECT для дочернего элемента и возвращает хотя бы один результат.Могу ли я организовать для моего поиска автоматический вывод всего содержимого всех связанных с ним родителей с этим ребенком?

Или я должен всегда брать ссылку у ребенка, помещать ее во второе выражение SELECT и выполнять ее сам?

Ответы [ 2 ]

3 голосов
/ 04 января 2011

Вы можете использовать подзапросы:

SELECT *
FROM Parent
WHERE Parent.Id IN (SELECT ParentId
                    FROM Child
                    WHERE Whatever_was_your_original_query)

Или старое доброе соединение:

SELECT Parent.*
FROM Parent INNER JOIN Child ON Parent.Id = Child.ParentId
WHERE Whatever_you_want_to_query
1 голос
/ 04 января 2011

Это самая основная цель SQL. Вы СОЕДИНИТЕ две таблицы вместе, чтобы создать один набор строк результатов с некоторыми или всеми столбцами из ОБА таблиц.

Подробнее см. на этой странице .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...