Arel 3.0.2提供了两个类来指定连接类型:Arel::Nodes::InnerJoin和默认Arel::Nodes::OuterJoin使用InnerJoin.
foo = Arel::Table.new('foo')
bar = Arel::Table.new('bar')
foo.join(bar, Arel::Nodes::InnerJoin) # inner
foo.join(bar, Arel::Nodes::OuterJoin) # outer
foo.join(bar, ???) # left
Run Code Online (Sandbox Code Playgroud)
如果要生成左连接,如何加入两个表?
使用
foo.join(bar, Arel::Nodes::OuterJoin) # outer
Run Code Online (Sandbox Code Playgroud)
因为LEFT JOIN = LEFT OUTER JOIN.外面是一个选择.看到这里