mirror of
https://github.com/gabehf/Koito.git
synced 2026-03-17 03:06:42 -07:00
feat: v0.0.8
This commit is contained in:
parent
00e7782be2
commit
80b6f4deaa
66 changed files with 1559 additions and 916 deletions
48
db/migrations/000003_add_primary_artist.sql
Normal file
48
db/migrations/000003_add_primary_artist.sql
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
-- +goose Up
|
||||
-- +goose StatementBegin
|
||||
SELECT 'up SQL query';
|
||||
-- +goose StatementEnd
|
||||
ALTER TABLE artist_tracks
|
||||
ADD COLUMN is_primary boolean NOT NULL DEFAULT false;
|
||||
|
||||
ALTER TABLE artist_releases
|
||||
ADD COLUMN is_primary boolean NOT NULL DEFAULT false;
|
||||
|
||||
-- +goose StatementBegin
|
||||
CREATE FUNCTION get_artists_for_release(release_id INTEGER)
|
||||
RETURNS JSONB AS $$
|
||||
SELECT json_agg(
|
||||
jsonb_build_object('id', a.id, 'name', a.name)
|
||||
ORDER BY ar.is_primary DESC, a.name
|
||||
)
|
||||
FROM artist_releases ar
|
||||
JOIN artists_with_name a ON a.id = ar.artist_id
|
||||
WHERE ar.release_id = $1;
|
||||
$$ LANGUAGE sql STABLE;
|
||||
-- +goose StatementEnd
|
||||
|
||||
-- +goose StatementBegin
|
||||
CREATE FUNCTION get_artists_for_track(track_id INTEGER)
|
||||
RETURNS JSONB AS $$
|
||||
SELECT json_agg(
|
||||
jsonb_build_object('id', a.id, 'name', a.name)
|
||||
ORDER BY at.is_primary DESC, a.name
|
||||
)
|
||||
FROM artist_tracks at
|
||||
JOIN artists_with_name a ON a.id = at.artist_id
|
||||
WHERE at.track_id = $1;
|
||||
$$ LANGUAGE sql STABLE;
|
||||
-- +goose StatementEnd
|
||||
|
||||
-- +goose Down
|
||||
-- +goose StatementBegin
|
||||
SELECT 'down SQL query';
|
||||
-- +goose StatementEnd
|
||||
ALTER TABLE artist_tracks
|
||||
DROP COLUMN is_primary;
|
||||
|
||||
ALTER TABLE artist_releases
|
||||
DROP COLUMN is_primary;
|
||||
|
||||
DROP FUNCTION IF EXISTS get_artists_for_release(INTEGER);
|
||||
DROP FUNCTION IF EXISTS get_artists_for_track(INTEGER);
|
||||
Loading…
Add table
Add a link
Reference in a new issue