Ошибка с внутренним соединением - таблица не найдена, хотя она есть

SELECT * FROM "animalTbl" 
  INNER JOIN "deathTbl" 
  ON animalTbl.animalID = deathTbl.animalID;

это мой код, и когда я запускаю, он показывает такую ​​проблему

 ERROR: missing FROM-clause entry for table "animaltbl"
LINE 3: ON animalTbl.animalID = deathTbl.animalID;
  ^

2 ответа

Вы должны использовать одно и то же регистрозависимое имя таблицы или псевдонимы для определения столбцов

Попробуй это:

SELECT * FROM "animalTbl" a
  INNER JOIN "deathTbl" d
  ON a.animalID = d.animalID

Имена объектов в postgres, как правило, нечувствительны к регистру, но использование двойных кавычек для ссылки на них вызывает чувствительность к регистру. Предполагая, что from предложение верно, вы должны соответствовать своим обозначениям и использовать те же обозначения в on пункт, как вы сделали в from а также join статьи:

SELECT     *
FROM       "animalTbl" 
INNER JOIN "deathTbl" ON "animalTbl".animalID = "deathTbl".animalID;
-- Here -----------------^---------^------------^--------^
Другие вопросы по тегам