|
NAMEDBIx::SQLEngine::Driver::Trait::NoComplexJoins - For databases without complex joins SYNOPSIS # Classes can import this behavior if they don't have joins using "on"
use DBIx::SQLEngine::Driver::Trait::NoComplexJoins ':all';
# Implements a workaround for missing "inner join on ..." capability
$rows = $sqldb->fetch_select_rows( tables => [
'foo', inner_join=>[ 'foo.id = bar.id' ], 'bar'
] );
# Attempts to use an "outer join" produce an exception
$rows = $sqldb->fetch_select_rows( tables => [
'foo', outer_join=>[ 'foo.id = bar.id' ], 'bar'
] );
DESCRIPTIONThis package supports SQL database servers which do natively provide a SQL select with inner and outer joins. This package causes inner joins to be replaced with cross joins and a where clause. Outer joins, including left and right joins, are not supported and will cause an exception. About Driver TraitsYou do not need to use this package directly; it is used internally by those driver subclasses which need it. For more information about Driver Traits, see "About Driver Traits" in DBIx::SQLEngine::Driver. REFERENCEDatabase Capability Information
Select to Retrieve Data
SEE ALSOSee DBIx::SQLEngine for the overall interface and developer documentation. See DBIx::SQLEngine::Docs::ReadMe for general information about this distribution, including installation and license information.
|