SQL: Есть ли способ вернуть строку из нескольких запросов? - PullRequest
0 голосов
/ 26 мая 2020

Хотелось бы узнать, возможно ли и как вернуть строку из нескольких запросов, которые атакуют разные таблицы. Я имею в виду, что каждый запрос возвращает разные поля, и ни одно из них не является ключом для связи с каким-либо другим результатом запроса.

Представьте, что у вас есть три таблицы: A, B, C и все они имеют разные поля, и все они имеют только одну строку.

A (attrib1, atrrib2) B (attrib3, attrib4, attrib5) C (attrib6)

Я хотел бы вернуть только одну строку со всеми данными каждой таблицы.

Результатом будет (attrib1, attrib2, attrib3, attrib4, attrib5, attrib6). Не имеет значения порядок.

Я хотел бы знать, есть ли способ сделать это только с SQL, без программирования.

Я использую MySQL. Если это невозможно сделать в MySQL, можно ли сделать это в другой базе данных?

1 Ответ

3 голосов
/ 26 мая 2020

Вы описываете cross join:

select a.*, b.*, c.*
from a cross join b cross join c;

Это стандартный SQL и поддерживается всеми базами данных, которые поддерживают SQL.

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