SQL语法混乱(自然连接)

SQL语法混乱(自然连接),sql,postgresql,join,Sql,Postgresql,Join,下面是下面的代码 postgres=# SELECT title,name,borrower.address WHERE library_branch NATURAL JOIN book NATURAL JOIN book_loans NATURAL JOIN borrow WHERE library_branch.branchname ='Sharpstown' AND dateOut='12/10/2014'; ERROR: syntax error at or near "NATURAL

下面是下面的代码

postgres=# SELECT title,name,borrower.address WHERE library_branch NATURAL JOIN
book NATURAL JOIN book_loans NATURAL JOIN borrow WHERE library_branch.branchname
='Sharpstown' AND dateOut='12/10/2014';
ERROR:  syntax error at or near "NATURAL"
LINE 1: ... title,name,borrower.address WHERE library_branch NATURAL JO...
                                                         ^
postgres=#

不知道为什么会出错。我认为我做的自然连接是正确的。有什么建议吗?

您有一个
where
关键字,其中来自
应该放在:

SELECT       title, name, borrower.address 
FROM         library_branch -- There's a WHERE here in the OP
NATURAL JOIN book 
NATURAL JOIN book_loans 
NATURAL JOIN borrow 
WHERE        library_branch.branchname = 'Sharpstown' AND 
             dateOut = '12/10/2014';

是postgressql还是mysql?请使用正确的标记提示符似乎是psql命令行客户端,而不是MySQL。您从中选择的表需要使用
from
子句,而不是
WHERE
子句(这对于Postgres和MySQL是正确的)。有关详细信息,请参阅手册:-->WHERE抱歉,我使用pgadmin3,同时感谢您,一匹没有名字的马自然加入有点危险。向表中添加列后,应用程序可能会停止工作。(类似于“选择*”问题。)