以下sql语句将无法在SQLite中运行:

select *
from A
left join (B inner join C on B.fkC = C.pk) on A.optionalfkB = B.pk


我得到sqlException“未知列B.pk”

根据文档@ http://www.sqlite.org/lang_select.html,这应该可以工作,并且可以在所有其他sql实现中工作。难道我做错了什么?

最佳答案

它不起作用,因为“外部”查询不知道B是什么。

select *
from A
left join (B inner join C on B.fkC = C.pk) B on A.optionalfkB = B.pk


(B inner join C on B.fkC = C.pk)很奇怪,没有任何select,但是规范确实说它是有效的。

关于sqlite - SQLIte中嵌套内部联接的问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7071283/

10-11 22:12
查看更多