ВЫБРАТЬ данные с первичными ключами из другой таблицы?

У меня есть таблица "пользователи", таблица "предложения" и соединение "*users_offers*" с идентификаторами userID и offerID.

Как выбрать каждое предложение из предложений, принадлежащих конкретному пользователю?

Я мог бы найти решение (ниже), которое фактически запускает выбор данных из таблицы соединений, а затем просто объединяет столбцы предложений, но в результате также содержатся столбцы соединений.

SELECT * 
FROM users_offers INNER JOIN offers ON users_offers.offerID = offers.ID 
WHERE userID = 1

Есть ли какое-либо решение, которое начинает выбор с предложений?

2 ответа

Решение

Использовать псевдоним SQL:

SELECT o.* 
FROM users_offers AS uo
INNER JOIN offers AS o ON uo.offerID = o.ID 
WHERE uo.userID = 1

Объяснение:

FROM users_offers AS uo устанавливает новый псевдоним uo, указывающий на таблицу [users_offers]. То же самое происходит для offers AS o, Эти псевдонимы могут использоваться в других частях вашего оператора SQL.

SELECT offers_alias.*
FROM users_offers
INNER JOIN offers AS offers_alias ON users_offers.offerID = offers_alias.ID 
WHERE users_offers.userID = 1
Другие вопросы по тегам