-- name: CreateUser :one INSERT INTO users ( id, username, hashed_password, email ) VALUES ( $1, $2, $3, $4 ) RETURNING *; -- name: DeleteUser :exec DELETE FROM users WHERE id = $1; -- name: UpdateUser :one UPDATE users SET hashed_password = $2, email = $3 WHERE id = $1 RETURNING *; -- name: GetUser :one SELECT * FROM users WHERE id = $1 LIMIT 1; -- name: GetUserByName :one SELECT * FROM users WHERE username = $1 LIMIT 1; -- name: GetUserByEmail :one SELECT * FROM users WHERE email = $1 LIMIT 1; -- name: ListUsers :many SELECT * FROM users ORDER BY id LIMIT $1 OFFSET $2;