Yimaru-BackEnd/db/query/course_programs.sql

89 lines
1.3 KiB
SQL

-- name: CreateProgram :one
INSERT INTO programs (
course_id,
title,
description,
thumbnail,
display_order,
is_active
)
VALUES (
$1, -- course_id
$2, -- title
$3, -- description
$4, -- thumbnail
$5, -- display_order
$6 -- is_active
)
RETURNING
id,
course_id,
title,
description,
thumbnail,
display_order,
is_active;
-- name: GetProgramByID :one
SELECT
id,
course_id,
title,
description,
thumbnail,
display_order,
is_active
FROM programs
WHERE id = $1;
-- name: ListProgramsByCourse :many
SELECT
id,
course_id,
title,
description,
thumbnail,
display_order,
is_active
FROM programs
WHERE course_id = $1
AND is_active = TRUE
ORDER BY display_order ASC, id ASC;
-- name: ListActivePrograms :many
SELECT
id,
course_id,
title,
description,
thumbnail,
display_order,
is_active
FROM programs
WHERE is_active = TRUE
ORDER BY display_order ASC;
-- name: UpdateProgram :one
UPDATE programs
SET
course_id = $2,
title = $3,
description = $4,
thumbnail = $5,
display_order = $6,
is_active = $7
WHERE id = $1
RETURNING
id,
course_id,
title,
description,
thumbnail,
display_order,
is_active;
-- name: DeactivateProgram :exec
UPDATE programs
SET is_active = FALSE
WHERE id = $1;