searchsql

package
v0.0.0-...-b0671cd Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 26, 2025 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DBTX

type DBTX interface {
	Exec(context.Context, string, ...interface{}) (pgconn.CommandTag, error)
	Query(context.Context, string, ...interface{}) (pgx.Rows, error)
	QueryRow(context.Context, string, ...interface{}) pgx.Row
}

type Querier

type Querier interface {
	// SELECT
	// 	sqlc.embed(users),
	// 	sqlc.embed(user_roles)
	// FROM
	// 	user_roles
	// 	JOIN teams ON teams.slug = user_roles.target_team_slug
	// 	JOIN users ON users.id = user_roles.user_id
	// WHERE
	// 	user_roles.user_id = @user_id
	// ORDER BY
	// 	CASE
	// 		WHEN @order_by::TEXT = 'slug:asc' THEN teams.slug
	// 	END ASC,
	// 	CASE
	// 		WHEN @order_by::TEXT = 'slug:desc' THEN teams.slug
	// 	END DESC,
	// 	teams.slug ASC
	TeamSlugsFromUserID(ctx context.Context, userID uuid.UUID) ([]slug.Slug, error)
}

type Queries

type Queries struct {
	// contains filtered or unexported fields
}

func New

func New(db DBTX) *Queries

func (*Queries) TeamSlugsFromUserID

func (q *Queries) TeamSlugsFromUserID(ctx context.Context, userID uuid.UUID) ([]slug.Slug, error)

SELECT

sqlc.embed(users),
sqlc.embed(user_roles)

FROM

user_roles
JOIN teams ON teams.slug = user_roles.target_team_slug
JOIN users ON users.id = user_roles.user_id

WHERE

user_roles.user_id = @user_id

ORDER BY

CASE
	WHEN @order_by::TEXT = 'slug:asc' THEN teams.slug
END ASC,
CASE
	WHEN @order_by::TEXT = 'slug:desc' THEN teams.slug
END DESC,
teams.slug ASC

func (*Queries) WithTx

func (q *Queries) WithTx(tx pgx.Tx) *Queries

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL