# ANN: LightQuery tutorial

**URL:** <https://discourse.julialang.org/t/ann-lightquery-tutorial/20262>\
**Category:** Package Announcements\
**Tags:** tutorials\
**Created:** [January 30, 2019, 5:30am UTC](https://discourse.julialang.org/t/ann-lightquery-tutorial/20262 "2019-01-30T05:30:52Z")\
**Posts on this page:** 4\
**Page:** 3

<div class="post-metadata">

**Author:** ![yakir12](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/yakir12/32/297_2.png) [@yakir12](https://discourse.julialang.org/u/yakir12)\
**Post date:** [July 11, 2019, 5:16am UTC](https://discourse.julialang.org/t/ann-lightquery-tutorial/20262/42 "2019-07-11T05:16:04Z")

</div>

Ok, I’ll test this today, thanks.

I’m just curious, are there ever situations where “a join” wouldn’t be that 5-row table…? Like, what is the advantage of having to sort, group, and then mix? I can understand the modularity and how powerful that can be, but a join is a join. So the convenience of a normal join function couldn’t possibly be underestimated. But that might be just me.

---

<div class="post-metadata">

**Author:** ![yakir12](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/yakir12/32/297_2.png) [@yakir12](https://discourse.julialang.org/u/yakir12)\
**Post date:** [July 11, 2019, 8:34am UTC](https://discourse.julialang.org/t/ann-lightquery-tutorial/20262/43 "2019-07-11T08:34:26Z")

</div>

I’ll just add another thing I noticed: you `Group` only the first source and you `order` none of the sources. I’m sure this makes sense, it just seems a bit difficult to penetrate this API from my (I guess “a beginner”) point of view. Consider that we have about 10 posts in this topic just about how to do a simple inner join – this probably says more about how slow I am than anything else. It also seems like it takes about `6×2+1` LOC to accomplish that join. This probably depends on the fact that you can streamline and perfect any action depending on the state of the input, which makes `LightQuery` the ideal building block for all the query frontend packages.

But all of this is a good indication that we need either:

1. a convenience function to accomplish (albeit not-as-fast-and-streamlined-as-possible) joins (and other DB actions) that never fail,
2. or a `MetaLightQuery` package for day-to-day DB actions (like join).

Again, I hope you don’t see this in the wrong light (heh), I love the modularity and lightness, but if normal users are to use this package, my opinion is such that this needs some convenience functions.

---

<div class="post-metadata">

**Author:** ![bramtayl](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/bramtayl/32/3614_2.png) [@bramtayl](https://discourse.julialang.org/u/bramtayl)\
**Post date:** [July 11, 2019, 4:41pm UTC](https://discourse.julialang.org/t/ann-lightquery-tutorial/20262/44 "2019-07-11T16:41:29Z")

</div>

I’d love for a `MetaLightQuery`. The point of the package is really to be low-level but flexible tools for working with tabular data. The reason I didn’t order the sources is because in your example they were already in order.

---

<div class="post-metadata">

**Author:** ![bramtayl](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/bramtayl/32/3614_2.png) [@bramtayl](https://discourse.julialang.org/u/bramtayl)\
**Post date:** [July 11, 2019, 4:45pm UTC](https://discourse.julialang.org/t/ann-lightquery-tutorial/20262/45 "2019-07-11T16:45:03Z")

</div>

> this probably says more about how slow I am than anything else

I think it probably just says that I’m a terrible writer. I’d love any help/advice for how to write better documentation.

[Previous page](https://discourse.julialang.org/t/ann-lightquery-tutorial/20262.md?page=2)
