Skip to content

@mapmany missing?  #35

Open

Description

@tlnagy

Using master, it looks like the @mapmany command is missing. For the groupby and then split approach mapmany is critical, is it just not implemented? I didn't see it mentioned in the codebase.

julia> db = SQLite.DB("data.sqlite3");

julia> getproperty(db, tbl[1]) |>
    @groupby(_.cell_id) |>
     # filter stuff
    @map({cell_id=key(_), rows=_}) |>
    @mapmany(i->i.rows, (i, j)->{j...}) |>
    DataFrame;
MethodError: no method matching mapmany(::QuerySQLite.SourceCode{SQLite.DB}, ::var"#113#123", ::Expr, ::var"#114#124", ::Expr)
Closest candidates are:
  mapmany(!Matched::QueryOperators.Enumerable, ::Function, ::Expr, ::Function, ::Expr) at /home/tlnagy/.julia/packages/QueryOperators/g4G21/src/enumerable/enumerable_mapmany.jl:42

Stacktrace:
 [1] (::var"#112#122")(::QuerySQLite.SourceCode{SQLite.DB}) at /home/tlnagy/.julia/packages/Query/AwBtd/src/standalone_query_macros.jl:205
 [2] |>(::QuerySQLite.SourceCode{SQLite.DB}, ::var"#112#122") at ./operators.jl:823
 [3] top-level scope at In[30]:1

Activity

  1. bramtayl commented on Jul 16, 2020

    @bramtayl
    Collaborator

    Nope, just not implemented, but shouldn't be too hard. Do you happen to know what the corresponding SQL code would look like?

  2. tlnagy commented on Jul 19, 2020

    @tlnagy
    Author

    I'm pretty new to SQL, but maybe the UNIONALL command is what we're looking for? I'm not sure it covers all of @mapmany's functionality.

  3. bramtayl commented on Jul 20, 2020

    @bramtayl
    Collaborator

    Hmm, I'm not sure that would do it...do you think you could come up with an example of using @mapmany using the Chinook_Sqlite.sqlite data in the test folder of the package (reading it into julia first, maybe as a dataframe). Then I'll see if I can replicate it in SQL?

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

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions