Sha256: 89fed3f428a9a4267fcac35785f060c47ef73d6a15868d6a7bd3f888fa05cd0b

Contents?: true

Size: 1.83 KB

Versions: 5

Compression:

Stored size: 1.83 KB

Contents

# when all sort attributes are preserved
- alf: |-
    project(sort(suppliers, [:name, :asc]), [:sid, :name])
  optimized: |-
    sort(project(suppliers, [:sid, :name]), [:name, :asc])
# when all sort attributes are preserved (allbut)
- alf: |-
    allbut(sort(suppliers, [:name, :asc]), [:city])
  optimized: |-
    sort(allbut(suppliers, [:city]), [:name, :asc])
# when no sort attribute is preserved
- alf: |-
    project(sort(suppliers, [:name, :asc]), [:sid])
  optimized: |-
    project(sort(project(suppliers, [:sid, :name]), [:name, :asc]), [:sid])
# when no sort attribute is preserved (allbut)
- alf: |-
    allbut(sort(suppliers, [:name, :asc]), [:name])
  optimized: |-
    allbut(sort(suppliers, [:name, :asc]), [:name])
# when no sort attribute is preserved (allbut II)
- alf: |-
    allbut(sort(suppliers, [:name, :asc]), [:name, :city])
  optimized: |-
    allbut(sort(allbut(suppliers, [:city]), [:name, :asc]), [:name])
# when some sort attributes are preserved
- alf: |-
    project(sort(suppliers, [[:name, :asc], [:sid, :asc]]), [:sid])
  optimized: |-
    project(sort(project(suppliers, [:sid, :name]), [[:name, :asc], [:sid, :asc]]), [:sid])
# when some sort attributes are preserved (II)
- alf: |-
    project(sort(suppliers, [[:name, :asc], [:sid, :asc]]), [:sid, :city])
  optimized: |-
    project(sort(project(suppliers, [:sid, :name, :city]), [[:name, :asc], [:sid, :asc]]), [:sid, :city])
# when some sort attributes are preserved (allbut)
- alf: |-
    allbut(sort(suppliers, [[:name, :asc], [:sid, :asc]]), [:sid])
  optimized: |-
    allbut(sort(suppliers, [[:name, :asc], [:sid, :asc]]), [:sid])
# when some sort attributes are preserved (allbut II)
- alf: |-
    allbut(sort(suppliers, [[:name, :asc], [:sid, :asc]]), [:sid, :city])
  optimized: |-
    allbut(sort(allbut(suppliers, [:city]), [[:name, :asc], [:sid, :asc]]), [:sid])

Version data entries

5 entries across 5 versions & 1 rubygems

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