r"""Create a SQL LEFT OUTER JOIN against this :class:`_expression.Select` object's criterion and apply generatively, returning the newly resulting :class:`_expression.Select`. Usage is the same as that of :meth:`_selectable.Select.join_from`.
(
self,
from_: _FromClauseArgument,
target: _JoinTargetArgument,
onclause: Optional[_OnClauseArgument] = None,
*,
full: bool = False,
)
| 5613 | return self |
| 5614 | |
| 5615 | def outerjoin_from( |
| 5616 | self, |
| 5617 | from_: _FromClauseArgument, |
| 5618 | target: _JoinTargetArgument, |
| 5619 | onclause: Optional[_OnClauseArgument] = None, |
| 5620 | *, |
| 5621 | full: bool = False, |
| 5622 | ) -> Self: |
| 5623 | r"""Create a SQL LEFT OUTER JOIN against this |
| 5624 | :class:`_expression.Select` object's criterion and apply generatively, |
| 5625 | returning the newly resulting :class:`_expression.Select`. |
| 5626 | |
| 5627 | Usage is the same as that of :meth:`_selectable.Select.join_from`. |
| 5628 | |
| 5629 | """ |
| 5630 | return self.join_from( |
| 5631 | from_, target, onclause=onclause, isouter=True, full=full |
| 5632 | ) |
| 5633 | |
| 5634 | @_generative |
| 5635 | def join_from( |