sql

package
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: Jul 30, 2025 License: MIT, Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

View Source
const (
	TmFmtWithMS = "2006-01-02 15:04:05.999"
	NullStr     = "NULL"
)
View Source
const (
	ColumnDeletedAt = "deleted_at"
	ColumnId        = "id"
	ColumnName      = "name"
)
View Source
const (
	ExprEqual    = " = ?"
	ExprNotEqual = " != ?"
	ExprGreater  = " > ?"
)
View Source
const (
	Insert    = "INSERT"
	Select    = "SELECT"
	Update    = "UPDATE"
	Delete    = "DELETE"
	LeftJoin  = "LEFT JOIN"
	RightJoin = "RIGHT JOIN"
	InnerJoin = "INNER JOIN"
	Limit     = `LIMIT %d`
	Offset    = `OFFSET %d`
	Limit1    = `LIMIT 1`
)
View Source
const (
	NotDeleted     = ColumnDeletedAt + " IS " + NullStr
	WithNotDeleted = ` AND ` + NotDeleted
)
View Source
const (
	IdEqual   = ColumnId + ExprEqual
	NameEqual = ColumnName + ExprEqual
)
View Source
const (
	CondiTagName = "sqlcondi" // e.g: `sqlcondi:"column:id;op:="`

)

Variables

This section is empty.

Functions

func ConvertParams

func ConvertParams(v interface{}, escaper string) string

func DeleteByIdSQL

func DeleteByIdSQL(tableName string) string

func DeleteSQL

func DeleteSQL(tableName, column string) string

func ExistsByFilterExprsSQL

func ExistsByFilterExprsSQL(tableName string, filters FilterExprs) string

func ExistsByQuerySQL

func ExistsByQuerySQL(qsql string) string

func ExistsSQL

func ExistsSQL(tableName, column string, withDeletedAt bool) string

Types

type ConditionOperation

type ConditionOperation int
const (
	OperationPlace ConditionOperation = iota
	Equal
	NotEqual
	Greater
	Less
	Between
	GreaterOrEqual
	LessOrEqual
	IsNotNull
	IsNull
	In
	NotIn
	Like
)

func ParseConditionOperation

func ParseConditionOperation(op string) ConditionOperation

func (ConditionOperation) SQL

func (m ConditionOperation) SQL() string

func (ConditionOperation) String

func (m ConditionOperation) String() string

type ConditionTag

type ConditionTag struct {
	Column     string `meta:"column"`
	Expr       string `meta:"expr"`
	Op         string `meta:"op"`
	EmptyValid bool   `meta:"emptyvalid"`
}

func GetSQLCondition

func GetSQLCondition(tag reflect.StructTag) (*ConditionTag, error)

type FilterExpr

type FilterExpr struct {
	Field     string             `json:"field"`
	Operation ConditionOperation `json:"op"`
	Value     []any              `json:"value"`
}

func (*FilterExpr) Build

func (filter *FilterExpr) Build() string

type FilterExprs

type FilterExprs []FilterExpr

func (FilterExprs) Build

func (f FilterExprs) Build() string

func (FilterExprs) BuildSQL

func (f FilterExprs) BuildSQL() (string, []interface{})

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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