Проблема доступа к конкретному столбцу с помощью INNER JOIN - PullRequest
0 голосов
/ 18 марта 2019

У меня есть две таблицы Listings & Reviews, в обеих из которых есть столбец id.

Я хочу inner join их с Listings.id = Reviews.listing_id, но когда я указываю что-то в моем pgadmin вроде listings.id или example.example кажется, что он его не распознает.

Я получаю сообщение об ошибке:

отсутствует запись в предложении FROM для таблицы "списки"

Я что-то не так пишу?Вот код:

SELECT 
  id, listing_url, reviewer_id, reviewer 
FROM 
  public."Listings" 
  INNER JOIN public."Reviews" ON Listings.id = listing_id 
WHERE 
  reviewer = 'Vivek' 
order by 
  reviewer_id;

1 Ответ

0 голосов
/ 18 марта 2019

Всегда указывайте все имена столбцов, чтобы и вы, и механизм SQL знали, откуда эти столбцы. Непонятно откуда берутся колонны. Я догадался, откуда берутся колонны:

SELECT l.id, l.listing_url, r.reviewer_id, r.reviewer
FROM public."Listings" l INNER JOIN
     public."Reviews" r
    ON l.id = r.listing_id
WHERE r.reviewer = 'Vivek'
ORDER BY r.reviewer_id;

Обратите внимание, что здесь вводятся псевдонимы таблиц, которые являются сокращениями для таблиц. Это облегчает определение имен столбцов (псевдоним по умолчанию - полное имя таблицы).

Кроме того, я могу ошибаться относительно того, откуда приходят столбцы; Ваш вопрос не имеет полной информации о структуре таблицы.

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