Попытка объединить 2 таблицы - PullRequest
0 голосов
/ 16 апреля 2020

У меня небольшая проблема с объединением таблиц. Структура первой таблицы:

P_Structure (структура, статья)

Структура второй таблицы:

S_Article (статья, описание)

Теперь у Структуры и Статьи есть строка в таблице S_Article (Структура - это главное, а статья включена). Мне нужно найти описание для обеих колонок - Структура и статья. База данных выполнена с идентификатором прогресса, и я использую ODB C Progress OpenEdge 11.6

@ edit

Это почти хорошо, но не идеально. Таблицы выглядят так:

S_Article

Article | Description
______________________
AUDI1234 | Car
GLAS3431 | Front Window
TYRE4343 | Michelin super formula
GLAS3433 | Rear window
P_Structure

Structure | Article
____________________

AUDI1234 | GLAS3431
AUDI1234 | TYRE4343
AUDI1234 | GLAS3433 

В конце sh я хотел бы получить таблицу P_Structure с описаниями для Structure и Article, например:

Structure | Article | DesciptionStructure | DescriptionArticle
_____________________________________________________________

AUDI1234 | GLAS3431 | Car | Front Window
AUDI1234 | TYRE4343 | Car | Michelin super formula
AUDI1234 | GLAS3433 | Car | Rear window

Ответы [ 2 ]

1 голос
/ 16 апреля 2020

Предполагая, что значение в столбце "article" одинаково в обеих таблицах (т. Е. Это ключ), вы можете просто присоединиться так:

SELECT s.structure, s.article, a.description FROM p_structure s LEFT JOIN s_article a ON s.article =  a.article

Это будет включать все строки из P_structure независимо от того, если они существуют в s_article. Если вам нужны только строки в обеих таблицах, используйте «внутреннее соединение» вместо «левое соединение»

SELECT s.structure, s.article, a.description FROM p_structure s INNER JOIN s_article a ON s.article =  a.article
0 голосов
/ 16 апреля 2020

Вы можете объединить свои таблицы следующим образом:

select P_Structure, S_Article.Article, P_Structure.Structure, Description
from P_Structure
join S_Article
on P_Structure.Article = S_Article.Article;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...