budgeteer/postgres/queries/categories.sql
Jan Bader efde504603
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
Hide hidden categories from searchresults
2022-03-14 20:00:00 +00:00

31 lines
1.0 KiB
SQL

-- name: CreateCategoryGroup :one
INSERT INTO category_groups
(name, budget_id)
VALUES ($1, $2)
RETURNING *;
-- name: GetCategoryGroups :many
SELECT category_groups.* FROM category_groups
WHERE category_groups.budget_id = $1;
-- name: CreateCategory :one
INSERT INTO categories
(name, category_group_id)
VALUES ($1, $2)
RETURNING *;
-- name: GetCategories :many
SELECT categories.*, category_groups.name as group FROM categories
INNER JOIN category_groups ON categories.category_group_id = category_groups.id
WHERE category_groups.budget_id = $1
ORDER BY category_groups.name, categories.name;
-- name: SearchCategories :many
SELECT CONCAT(category_groups.name, ' : ', categories.name) as name, categories.id, 'category' as type
FROM categories
INNER JOIN category_groups ON categories.category_group_id = category_groups.id
WHERE category_groups.budget_id = @budget_id
AND categories.name ILIKE @search
AND category_groups.name != 'Hidden Categories'
ORDER BY category_groups.name, categories.name;
--ORDER BY levenshtein(payees.name, $2);