SELECT*
FROM student NATURAL JOIN teaches
17:16:44失败[SELECT *-0行,0.023秒] [代码:102,SQL 州:42000] derNähevon“教”中的Falsche语法。
我真的看不到语法错误,这可能是什么问题?预先感谢!
答案 0 :(得分:0)
请勿使用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
的主要问题是它使用具有相同 name 的列,而不是正确声明的外键关系。次要问题是关键字不在查询中,这使问题难以调试。意外的键可能用于连接,您甚至看不到它们是什么。通过将它们包含在ON
或USING
子句中,明确使用的键。