29 lines
704 B
SQL
29 lines
704 B
SQL
-- name: GetUserById :one
|
|
SELECT *
|
|
FROM users u
|
|
WHERE u.id = @user_id::uuid;
|
|
|
|
-- name: GetUserAuthValue :one
|
|
SELECT u.ID as user_id, a.value as auth_value
|
|
FROM users u
|
|
JOIN auth_method a
|
|
ON a.user_id = u.id
|
|
WHERE
|
|
(u.name = @auth_value::text OR u.email = @auth_value)
|
|
AND a.type = @auth_type::auth_type;
|
|
|
|
-- name: CreateUser :one
|
|
INSERT INTO users (name, email, bio, profile_photo)
|
|
VALUES($1, $2, $3, $4)
|
|
RETURNING *;
|
|
|
|
-- name: UpdateUser :one
|
|
UPDATE users
|
|
SET name = @name::text, email = @email::text, bio = @bio::text, profile_photo = @photo::text
|
|
WHERE id = @id::uuid
|
|
RETURNING *;
|
|
|
|
-- name: CreateAuthMethod :exec
|
|
INSERT INTO auth_method (user_id, type, value)
|
|
VALUES ($1, $2, $3);
|