Changeset: 3fd6d1c3eb7e for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=3fd6d1c3eb7e Modified Files: monetdb5/modules/kernel/algebra.mal Branch: default Log Message:
Outerjoin not needed in SQL We might keep the primitive but then we need to reshape it into a double column returning function. diffs (43 lines): diff --git a/monetdb5/modules/kernel/algebra.mal b/monetdb5/modules/kernel/algebra.mal --- a/monetdb5/modules/kernel/algebra.mal +++ b/monetdb5/modules/kernel/algebra.mal @@ -71,28 +71,26 @@ comment "Returns all BUNs, consisting of command join( left:bat[:any_1,:any_2], right:bat[:any_2,:any_3]) :bat[:any_1,:any_3] address ALGjoin; +command join( left:bat[:any_1,:any_2], right:bat[:any_2,:any_3], estimate:lng) :bat[:any_1,:any_3] +address ALGjoinestimate; + command leftjoin( left:bat[:any_1,:any_2], right:bat[:any_2,:any_3]) :bat[:any_1,:any_3] address ALGleftjoin; - command leftjoin( left:bat[:any_1,:any_2], right:bat[:any_2,:any_3], estimate:lng) :bat[:any_1,:any_3] address ALGleftjoinestimate; -command join( left:bat[:any_1,:any_2], right:bat[:any_2,:any_3], estimate:lng) :bat[:any_1,:any_3] -address ALGjoinestimate; - command leftfetchjoin ( left:bat[:oid,:oid], right:bat[:oid,:any_3] ) :bat[:oid,:any_3] address ALGleftfetchjoin comment "Hook directly into the left fetch join implementation."; - -command outerjoin( outer:bat[:any_1,:any_2], inner:bat[:any_2,:any_3]) :bat[:any_1,:any_3] -address ALGouterjoin -comment "Returns all the result of a join, plus the BUNS formed NIL in - the tail and the head-values of 'outer' whose tail-value does - not match an head-value in 'inner'."; - -command outerjoin( outer:bat[:any_1,:any_2], inner:bat[:any_2,:any_3], estimate:lng) :bat[:any_1,:any_3] -address ALGouterjoinestimate; +#command outerjoin( outer:bat[:any_1,:any_2], inner:bat[:any_2,:any_3]) :bat[:any_1,:any_3] +#address ALGouterjoin +#comment "Returns all the result of a join, plus the BUNS formed NIL in +# the tail and the head-values of 'outer' whose tail-value does +# not match an head-value in 'inner'."; +# +#command outerjoin( outer:bat[:any_1,:any_2], inner:bat[:any_2,:any_3], estimate:lng) :bat[:any_1,:any_3] +#address ALGouterjoinestimate; # Theta Join command thetajoin( left:bat[:any_1,:any_2], right:bat[:any_2,:any_3], opname:int) :bat[:any_1,:any_3] _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list