Синтаксис НАТУРАЛЬНОГО СОЕДИНЕНИЯ - PullRequest
0 голосов
/ 25 октября 2018
SELECT*
FROM student NATURAL JOIN teaches

17: 16: 44 FAILED [SELECT * - 0 строк, 0,023 с] [Код: 102, состояние SQL: 42000] Синтаксис Falsche в der Nähe von "Teaches".

Я действительно не вижу синтаксическую ошибку, что это может быть за проблема?Заранее спасибо!

1 Ответ

0 голосов
/ 25 октября 2018

Только не используйте natural join.Очевидно, у вас есть база данных, которая не поддерживает ее.Таким образом, используйте явный синтаксис join:

SELECT . . . 
FROM student s INNER JOIN
     teaches t
     ON s.studentId = t.studentId;  -- I'm guessing what the keys are

Основная проблема с NATURAL JOIN заключается в том, что он использует столбцы с одинаковым именем , а не должным образом объявленными отношениями внешнего ключа.Вторичные проблемы заключаются в том, что ключи не находятся в запросе, что затрудняет их отладку.Неожиданные ключи могут быть использованы для объединения, и вы даже не можете увидеть, какие они есть.Проясните, какие ключи вы используете, включив их в условие ON или USING.

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