mirror of
https://github.com/JuLi0n21/pwa-player.git
synced 2026-04-19 15:30:05 +00:00
43 lines
1015 B
SQL
43 lines
1015 B
SQL
-- name: InsertCollection :exec
|
|
INSERT INTO Collection (Name, MD5Hash) VALUES (?, ?);
|
|
|
|
-- name: GetCollectionCountByName :one
|
|
SELECT COUNT(*) FROM Collection WHERE Name = ?;
|
|
|
|
-- name: GetCollections :many
|
|
SELECT c.Name, COUNT(b.MD5Hash) AS Count, MIN(b.Folder) AS Folder, MIN(b.File) AS File
|
|
FROM Collection c
|
|
JOIN Beatmap b ON c.MD5Hash = b.MD5Hash
|
|
WHERE c.Name LIKE ?
|
|
GROUP BY c.Name
|
|
LIMIT ? OFFSET ?;
|
|
|
|
-- name: GetCollection :many
|
|
SELECT
|
|
c.Name,
|
|
b.BeatmapId,
|
|
b.MD5Hash,
|
|
b.Title,
|
|
b.Artist,
|
|
b.Creator,
|
|
b.Folder,
|
|
b.File,
|
|
b.Audio,
|
|
b.TotalTime
|
|
FROM Collection c
|
|
JOIN Beatmap b ON c.MD5Hash = b.MD5Hash
|
|
JOIN (
|
|
SELECT DISTINCT Name
|
|
FROM Collection
|
|
ORDER BY Name
|
|
LIMIT 1 OFFSET ?
|
|
) selected_name ON c.Name = selected_name.Name
|
|
LIMIT ? OFFSET ?;
|
|
|
|
-- name: GetCollectionByName :many
|
|
SELECT c.Name, b.BeatmapId, b.MD5Hash, b.Title, b.Artist, b.Creator, b.Folder, b.File, b.Audio, b.TotalTime
|
|
FROM Collection c
|
|
JOIN Beatmap b ON c.MD5Hash = b.MD5Hash
|
|
WHERE c.Name = ?
|
|
LIMIT ? OFFSET ?;
|