自然联接语法

时间:2018-10-25 15:24:55

标签: sql natural-join

SELECT*
FROM student NATURAL JOIN teaches
  

17:16:44失败[SELECT *-0行,0.023秒] [代码:102,SQL   州:42000] derNähevon“教”中的Falsche语法。

我真的看不到语法错误,这可能是什么问题?预先感谢!

1 个答案:

答案 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 的列,而不是正确声明的外键关系。次要问题是关键字不在查询中,这使问题难以调试。意外的键可能用于连接,您甚至看不到它们是什么。通过将它们包含在ONUSING子句中,明确使用的键。