Sha256: 059661ba30f118be132f03627db8216e96611f12a847d9ac63b434ec6a85cd36

Contents?: true

Size: 791 Bytes

Versions: 5

Compression:

Stored size: 791 Bytes

Contents

# join preserving all join attributes
- alf: |-
    project(join(suppliers, supplies), [:sid, :name, :pid, :qty])
  optimized: |-
    join(project(suppliers, [:sid, :name]), supplies)
# join preserving all join attributes (allbut)
- alf: |-
    allbut(join(suppliers, supplies), [:status, :qty])
  optimized: |-
    join(allbut(suppliers, [:status]), allbut(supplies, [:qty]))
# when not preserving all join attributes
- alf: |-
    project(join(suppliers, supplies), [:name, :qty])
  optimized: |-
    project(join(project(suppliers, [:sid, :name]), project(supplies, [:sid, :qty])), [:name, :qty])
# when not preserving all join attributes (allbut)
- alf: |-
    allbut(join(suppliers, supplies), [:sid, :pid])
  optimized: |-
    allbut(join(suppliers, allbut(supplies, [:pid])), [:sid])

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
alf-0.16.3 spec/optimizer/project/join.yml
alf-0.16.2 spec/optimizer/project/join.yml
alf-0.16.1 spec/optimizer/project/join.yml
alf-0.16.0 spec/optimizer/project/join.yml
alf-0.15.0 spec/optimizer/project/join.yml