Hacker News new | ask | show | jobs
by stdohm 2134 days ago
I'm a fan of using raw sql like this but curious if anyone has solved deduplicating common statements and dynamic queries in a good way.

For example:

1) Imagine lots of queries having to show the results in the context of a user and therefore use the same JOIN and WHERE clause all over. Not being DRY, this breaks down when having to change the clause at all.

2) Imagine a reporting page that allows for filtering and ordering by different columns and therefore need some way to compose the final sql.

1 comments

Don't query builders already let you do that? By making the WHERE clause map to a data structure, you can just duplicate the data structure to duplicate the WHERE clause e.g. https://bokwoon95.github.io/sq/query-building/reusing-where.... (full disclosure: I'm the author).
Total agree and I use query builders all the time. (Yours definitely looks nice.) I was curious though how others might of handled these issues when using libraries like the one posted here which is just raw sql.
+1 for query builders being an excellent choice for a lot of applications and uses. Keeping things DRY being one. We haven't solved the repetition in SQL with aiosql. We also haven't tried. :)