diff options
Diffstat (limited to 'pkg/database/sqlc/entries.sql.go')
| -rw-r--r-- | pkg/database/sqlc/entries.sql.go | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/pkg/database/sqlc/entries.sql.go b/pkg/database/sqlc/entries.sql.go index 846076d..eadc25c 100644 --- a/pkg/database/sqlc/entries.sql.go +++ b/pkg/database/sqlc/entries.sql.go @@ -101,6 +101,52 @@ func (q *Queries) GetEntries(ctx context.Context) ([]GetEntriesRow, error) { return items, nil } +const getEntriesByKind = `-- name: GetEntriesByKind :many +SELECT title, url, description, timestamp, kinds.name as kind_name, kinds.emoji as kind_emoji FROM entries +JOIN kinds ON entries.kind == kinds.id +WHERE kinds.name = ? +ORDER BY timestamp DESC +` + +type GetEntriesByKindRow struct { + Title string `json:"title"` + Url string `json:"url"` + Description string `json:"description"` + Timestamp string `json:"timestamp"` + KindName string `json:"kind_name"` + KindEmoji string `json:"kind_emoji"` +} + +func (q *Queries) GetEntriesByKind(ctx context.Context, name string) ([]GetEntriesByKindRow, error) { + rows, err := q.db.QueryContext(ctx, getEntriesByKind, name) + if err != nil { + return nil, err + } + defer rows.Close() + var items []GetEntriesByKindRow + for rows.Next() { + var i GetEntriesByKindRow + if err := rows.Scan( + &i.Title, + &i.Url, + &i.Description, + &i.Timestamp, + &i.KindName, + &i.KindEmoji, + ); err != nil { + return nil, err + } + items = append(items, i) + } + if err := rows.Close(); err != nil { + return nil, err + } + if err := rows.Err(); err != nil { + return nil, err + } + return items, nil +} + const getEntryByUrl = `-- name: GetEntryByUrl :one SELECT entries.id, title, url, description, timestamp, kinds.name as kind_name, kinds.emoji as kind_emoji FROM entries JOIN kinds ON entries.kind == kinds.id |
