bitemyapp / bitemyapp/esqueleto

Missing docs for SQL functions

Open
#93 5 comments 0 reactions 0 assignees View on GitHub
easy help wanted
Dominant language
Haskell
Stars
399
Forks
107
Avg merge
1d 17h
Merged PRs (30d)
1

Description

If I'm not missing something completely obvious, the core tutorial at https://www.stackage.org/haddock/lts-10.10/esqueleto-2.5.3/Database-Esqueleto.html doesn't really teach how to use SQL functions/expressions, such as `date`, `random`, `now`, `substr`, etc.

Coupled with the fact that the modules `Database.Esqueleto.SQLite` and `Database.Esqueleto.MySQL` don't show up in the package contents, I was under the impression that Esqueleto had absolutely no way to groupBy `date(timestampCol)` in SQLIte. After going through https://github.com/bitemyapp/esqueleto/blob/master/src/Database/Esqueleto/PostgreSQL.hs I realise that `unsafeSQLFuntion` is that escape hatch.

- Are you open to a PR that documents this in the main tutorial?
- Are you open to PRs for adding more functions to https://github.com/bitemyapp/esqueleto/blob/master/src/Database/Esqueleto/SQLite.hs

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the core tutorial and compare the documented SQL expression guidance with Database/Esqueleto/PostgreSQL.hs, Database/Esqueleto/SQLite.hs, and Database/Esqueleto/MySQL.hs. Clarify how SQL functions such as date, random, now, and substr can be used, including the SQLite grouping example, and ensure the relevant modules and available functions are discoverable.

Written by the indexing model from the issue text.

Assessment

Tech stack
haskell, mysql, postgresql, sqlite
Domain
databases, documentation
Issue type
Documentation
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.