20 lines
605 B
MySQL
20 lines
605 B
MySQL
|
|
-- name: InsertSession :exec
|
||
|
|
INSERT INTO sessions (id, user_id, expires_at)
|
||
|
|
VALUES ($1, $2, $3);
|
||
|
|
|
||
|
|
-- name: GetSessionWithUser :one
|
||
|
|
SELECT s.id, s.user_id, s.created_at, s.expires_at,
|
||
|
|
u.id AS u_id, u.email, u.password_hash, u.created_at AS u_created_at, u.updated_at AS u_updated_at
|
||
|
|
FROM sessions s
|
||
|
|
JOIN users u ON u.id = s.user_id
|
||
|
|
WHERE s.id = $1 AND s.expires_at > now();
|
||
|
|
|
||
|
|
-- name: DeleteSession :exec
|
||
|
|
DELETE FROM sessions WHERE id = $1;
|
||
|
|
|
||
|
|
-- name: DeleteSessionsByUser :exec
|
||
|
|
DELETE FROM sessions WHERE user_id = $1;
|
||
|
|
|
||
|
|
-- name: ExtendSession :exec
|
||
|
|
UPDATE sessions SET expires_at = $2 WHERE id = $1;
|