我有2个表 表一自然连接不返回行
col1 col2 col3 col4 col5
1 007 .. .. ..
2 006 .. .. ..
3 008 .. .. ..
表B中
col1 col7 col8 col9 many columns
2 A AA
3 B BB
SELECT col2,col8,col9 FROM table A natural join table B
不返回在两个表中的所有行 col1
具有相同的名称,数据类型和两者都主键
我也试过
SELECT col2,col8,col9 FROM table A natural join table B using (col1)
上面得到#1064错误。
SELECT col8,col2,col9 FROM table A join table B ON A.col1=B.col1
返回所需的结果。 为什么自然连接不返回任何行?
如果我使用
SELECT col2,col8,col9
FROM table A
JOIN table B
LIMIT 0 , 30
我得到以下结果
col8 col2 col9
A 007 AA
B 007 BB
A 006 AA
B 006 BB
A 008 AA
B 008 BB
你可能已经检查了这个,但是如果你没有,#1064错误代码通常指的是保留字的使用或者插入不兼容的类型到字段中(你没有做的)或者其他一些语法错误您的声明:请查看此链接http://www.inmotionhosting.com/support/website/database-troubleshooting/error-1064。这可能是在你真正的代码中你正在做的其中一个。你可以请发布解决方案,当你找到一个... – Davit
@Davit让我检查保留字,谢谢如果我得到的解决方案将发布它 – AAB
@Davit错误与保留关键字无关,请参阅下面的答案。 – Markus