From 3eb4424e86bbc2eaeccd0e182c1ec0ce27321690 Mon Sep 17 00:00:00 2001 From: LordMathis Date: Fri, 7 Mar 2025 19:48:36 +0100 Subject: [PATCH] Implement time since query --- server/internal/db/query.go | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/server/internal/db/query.go b/server/internal/db/query.go index 192e848..fcec089 100644 --- a/server/internal/db/query.go +++ b/server/internal/db/query.go @@ -266,7 +266,7 @@ func (q *Query) Placeholder(arg any) *Query { func (q *Query) Placeholders(n int) *Query { placeholders := make([]string, n) - for i := 0; i < n; i++ { + for i := range n { q.pos++ if q.dbType == DBTypePostgres { placeholders[i] = fmt.Sprintf("$%d", q.pos) @@ -279,6 +279,14 @@ func (q *Query) Placeholders(n int) *Query { return q } +func (q *Query) TimeSince(days int) string { + if q.dbType == DBTypePostgres { + return fmt.Sprintf("NOW() - INTERVAL '%d days'", days) + } + + return fmt.Sprintf("datetime('now', '-%d days')", days) +} + // AddArgs adds arguments to the query func (q *Query) AddArgs(args ...any) *Query { q.args = append(q.args, args...)