Skip to content

LINQ style queries in Squeal? #280

Description

@echatav

The question recently was asked at work:

Have you considered putting the select at the end instead of the beginning? C#’s LINQ ended up making that change in its approach to a SQL-like DSL. Not sure it would help but I was curious if you considered that approach or not.

I hadn't considered it at all but in fact, with more thorough use of the reverse function application operator (&), Squeal already supports this LINQ style:

-- LINQ style
from (table #scores)
  & where_ (#score .> 80)
  & groupBy #winner
  & select_
    ( #winner :*
      max_ #score `as` #best_score
    )

-- SQL style
select_
  ( #winner :*
    max_ #score `as` #best_score
  )
  ( from (table #scores)
    & where_ (#score .> 80)
    & groupBy #winner
  )

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions