Как сделать запрос к таблице с кардинальной единицей, чтобы отобразить все Pk, а также отобразить соответствующие элементы в таблице с FK - PullRequest
0 голосов
/ 15 сентября 2011

Прежде всего, пожалуйста, прости меня, если вопрос не ясен.Я объясню это ясно здесь.

Хорошо, допустим, у меня есть таблица "TableA" со столбцами (ApkColumn, x, y), где ApkColumn является первичным ключом для TableA и позволяет сказать "Таблица A "имеет следующую информацию:

Таблица A

ApkColumn ||х ||y ||

1 ||Боб ||Алан

2 ||Линда ||ягода

3 ||Андрей ||Hall

и

и другая таблица «Таблица B» со столбцами (BpkColumn, M, N, AfkColumn), где BpkColumn - первичный ключ для TableB, а AfkColumn - внешний ключ для таблицы A.

Таблица B

BpkColumn || M || N || AfkColumn

1 || Physics01 || Основы физики ||1

Теперь я хочу запросить A так, чтобы я получил следующие результаты:

таблица результатов

x|| M || N

Боб || Physics01 || Основы физики

Линда || ноль || ноль

Андрей ||null || null

т.е. я хочу отобразить все элементы из TableA (для столбца), и если у него есть соответствующий столбец в TableB, он должен отображаться иначе, должен отображаться null.

Я пытался сделать левое соединение против ПК и ФК.Но он отображается только для столбцов в таблице B.

Заранее спасибо.

1 Ответ

3 голосов
/ 15 сентября 2011

Было бы неплохо добавить сделанный вами запрос, потому что предложенный вами способ - это сделать. просто убедитесь, что таблица A находится на левой стороне соединения:

select .....
from A left outer join B
on (A.ApkColumn=B.AfkColumn)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...