Documentation
¶
Index ¶
- Variables
- func EscapeIdentifier(dbType DBType, name string) (string, error)
- func GeneratePlaceholders(dbType DBType, start, count int) string
- func ReplacePlaceholders(dbType DBType, input string, start int) string
- func ValidateDirection(dir string) string
- type DBConfig
- type DBType
- type DataBaseConnector
- func InitConnection(dbType DBType, cfg DBConfig) (*DataBaseConnector, error)
- func InitMariadbConnection(dbType string, cfg DBConfig) (*DataBaseConnector, error)
- func InitPostgresConnection(dbType string, cfg DBConfig) (*DataBaseConnector, error)
- func InitSqliteConnection(dbType string, cfg DBConfig) (*DataBaseConnector, error)
- func (connect *DataBaseConnector) MrCheckConnection() error
- func (connect *DataBaseConnector) MrCreateTable(queryList []string) error
- func (connect *DataBaseConnector) MrDeleteMultiple(queryList []PreparedQuery) ([]sql.Result, error)
- func (connect *DataBaseConnector) MrDeleteQuery(queryString string, args []interface{}) (sql.Result, error)
- func (connect *DataBaseConnector) MrInsertMultiple(queryList []PreparedQuery) ([]sql.Result, error)
- func (connect *DataBaseConnector) MrInsertQuery(queryString string, args []interface{}) (sql.Result, error)
- func (connect *DataBaseConnector) MrSelectMultiple(queryString string, args []interface{}) (*sql.Rows, error)
- func (connect *DataBaseConnector) MrSelectSingle(queryString string, args []interface{}) (*sql.Row, error)
- func (connect *DataBaseConnector) MrUpdateMultiple(queryList []PreparedQuery) ([]sql.Result, error)
- func (connect *DataBaseConnector) MrUpdateQuery(queryString string, args []interface{}) (sql.Result, error)
- func (connect *DataBaseConnector) PgCheckConnection() error
- func (connect *DataBaseConnector) PgCreateTable(queryList []string) error
- func (connect *DataBaseConnector) PgDeleteMultiple(queryList []PreparedQuery) ([]sql.Result, error)
- func (connect *DataBaseConnector) PgDeleteQuery(queryString string, args []interface{}) (sql.Result, error)
- func (connect *DataBaseConnector) PgInsertMultiple(queryList []PreparedQuery) ([]sql.Result, error)
- func (connect *DataBaseConnector) PgInsertQuery(queryString string, returns []interface{}, args []interface{}) (sql.Result, error)
- func (connect *DataBaseConnector) PgSelectMultiple(queryString string, args []interface{}) (*sql.Rows, error)
- func (connect *DataBaseConnector) PgSelectSingle(queryString string, args []interface{}) (*sql.Row, error)
- func (connect *DataBaseConnector) PgUpdateMultiple(queryList []PreparedQuery) ([]sql.Result, error)
- func (connect *DataBaseConnector) PgUpdateQuery(queryString string, args []interface{}) (sql.Result, error)
- func (connect *DataBaseConnector) QueryBuilderInsert(queryString string, args []interface{}) (sql.Result, error)
- func (connect *DataBaseConnector) QueryBuilderOneRow(queryString string, args []interface{}) *sql.Row
- func (connect *DataBaseConnector) QueryBuilderRows(queryString string, args []interface{}) (*sql.Rows, error)
- func (connect *DataBaseConnector) QueryBuilderUpdate(queryString string, args []interface{}) (sql.Result, error)
- func (connect *DataBaseConnector) SqAnalyze() error
- func (connect *DataBaseConnector) SqCheckConnection() error
- func (connect *DataBaseConnector) SqCreateTable(queryList []string) error
- func (connect *DataBaseConnector) SqDeleteMultiple(queryList []PreparedQuery) ([]sql.Result, error)
- func (connect *DataBaseConnector) SqDeleteQuery(queryString string, args []interface{}) (sql.Result, error)
- func (connect *DataBaseConnector) SqEnableForeignKeys() error
- func (connect *DataBaseConnector) SqEnableWAL() error
- func (connect *DataBaseConnector) SqGetVersion() (string, error)
- func (connect *DataBaseConnector) SqInsertMultiple(queryList []PreparedQuery) ([]sql.Result, error)
- func (connect *DataBaseConnector) SqInsertQuery(queryString string, args []interface{}) (sql.Result, error)
- func (connect *DataBaseConnector) SqSelectMultiple(queryString string, args []interface{}) (*sql.Rows, error)
- func (connect *DataBaseConnector) SqSelectSingle(queryString string, args []interface{}) (*sql.Row, error)
- func (connect *DataBaseConnector) SqUpdateMultiple(queryList []PreparedQuery) ([]sql.Result, error)
- func (connect *DataBaseConnector) SqUpdateQuery(queryString string, args []interface{}) (sql.Result, error)
- func (connect *DataBaseConnector) SqVacuum() error
- type PreparedQuery
- type QueryBuilder
- func BuildCountSelect(dbType DBType, table string, countColumn string) *QueryBuilder
- func BuildDelete(dbType DBType, table string) *QueryBuilder
- func BuildInsert(dbType DBType, table string) *QueryBuilder
- func BuildSelect(dbType DBType, table string, columns ...string) *QueryBuilder
- func BuildUpdate(dbType DBType, table string) *QueryBuilder
- func NewQueryBuilder(dbType DBType, table string, columns ...string) *QueryBuilder
- func (qb *QueryBuilder) AddClause(clause *[]string, format string, values ...interface{}) *QueryBuilder
- func (qb *QueryBuilder) AddSafeClause(clause *[]string, format string, identifier string, extra string) *QueryBuilder
- func (qb *QueryBuilder) AddWhereIfNotEmpty(condition string, value interface{}) *QueryBuilder
- func (qb *QueryBuilder) Aggregate(function, column string) *QueryBuilder
- func (qb *QueryBuilder) Build() (string, []interface{}, error)
- func (qb *QueryBuilder) Distinct() *QueryBuilder
- func (qb *QueryBuilder) GroupBy(columns ...string) *QueryBuilder
- func (qb *QueryBuilder) Having(condition string, args ...interface{}) *QueryBuilder
- func (qb *QueryBuilder) InnerJoin(joinTable, onCondition string) *QueryBuilder
- func (qb *QueryBuilder) LeftJoin(joinTable, onCondition string) *QueryBuilder
- func (qb *QueryBuilder) Limit(limit int) *QueryBuilder
- func (qb *QueryBuilder) Offset(offset int) *QueryBuilder
- func (qb *QueryBuilder) OrWhere(condition string, args ...interface{}) *QueryBuilder
- func (qb *QueryBuilder) OrderBy(column, direction string, allowedColumns map[string]bool) *QueryBuilder
- func (qb *QueryBuilder) Returning(clause string) *QueryBuilder
- func (qb *QueryBuilder) RightJoin(joinTable, onCondition string) *QueryBuilder
- func (qb *QueryBuilder) Select(columns ...string) *QueryBuilder
- func (qb *QueryBuilder) Set(data map[string]interface{}) *QueryBuilder
- func (qb *QueryBuilder) Subquery(subquery *QueryBuilder, alias string) string
- func (qb *QueryBuilder) Values(data map[string]interface{}) *QueryBuilder
- func (qb *QueryBuilder) Where(condition string, args ...interface{}) *QueryBuilder
- func (qb *QueryBuilder) WhereBetween(column string, start, end interface{}) *QueryBuilder
- func (qb *QueryBuilder) WhereIn(column string, values []interface{}) *QueryBuilder
Constants ¶
This section is empty.
Variables ¶
Functions ¶
func EscapeIdentifier ¶ added in v1.0.0
EscapeIdentifier
@ dbType: Database type (PostgreSQL, MariaDB, Mysql) @ name: Identifier to escape @ Return: Escaped identifier and error if any
func GeneratePlaceholders ¶ added in v1.0.0
GeneratePlaceholders
@ dbType: Database type @ startIdx: Starting index for placeholders @ count: Number of placeholders to generate @ Return: String of placeholders separated by comma
func ReplacePlaceholders ¶ added in v1.0.0
ReplacePlaceholders
@ dbType: Database type @ condition: Condition string with placeholders @ startIdx: Starting index for placeholders @ Return: Condition string with replaced placeholders
func ValidateDirection ¶ added in v1.0.0
ValidateDirection
@ direction: Order direction string @ Return: Validated order direction ("ASC" or "DESC")
Types ¶
type DBConfig ¶
type DBConfig struct {
UserName string // Database username
Password string // Database password
Host string // Database host
Port int // Database port
Database string // Database name or file path for SQLite
SslMode *string // SSL mode for PostgreSQL
MaxLifeTime *time.Duration // Maximum connection lifetime
MaxIdleConns *int // Maximum idle connections
MaxOpenConns *int // Maximum open connections
}
DBConfig holds database connection configuration.
type DBType ¶
type DBType string
DBType represents the type of database.
type DataBaseConnector ¶
DataBaseConnector wraps sql.DB with additional functionality.
func InitConnection ¶
func InitConnection(dbType DBType, cfg DBConfig) (*DataBaseConnector, error)
InitConnection creates a new database connection based on the database type.
func InitMariadbConnection ¶
func InitMariadbConnection(dbType string, cfg DBConfig) (*DataBaseConnector, error)
InitMariadbConnection initializes a MariaDB/MySQL database connection.
func InitPostgresConnection ¶
func InitPostgresConnection(dbType string, cfg DBConfig) (*DataBaseConnector, error)
InitPostgresConnection initializes a PostgreSQL database connection.
func InitSqliteConnection ¶ added in v1.6.0
func InitSqliteConnection(dbType string, cfg DBConfig) (*DataBaseConnector, error)
InitSqliteConnection initializes SQLite database connection
func (*DataBaseConnector) MrCheckConnection ¶
func (connect *DataBaseConnector) MrCheckConnection() error
MrCheckConnection checks the MariaDB/MySQL database connection.
func (*DataBaseConnector) MrCreateTable ¶
func (connect *DataBaseConnector) MrCreateTable(queryList []string) error
func (*DataBaseConnector) MrDeleteMultiple ¶ added in v0.0.2
func (connect *DataBaseConnector) MrDeleteMultiple(queryList []PreparedQuery) ([]sql.Result, error)
MrDeleteMultiple executes multiple DELETE queries within a transaction.
func (*DataBaseConnector) MrDeleteQuery ¶
func (connect *DataBaseConnector) MrDeleteQuery(queryString string, args []interface{}) (sql.Result, error)
MrDeleteQuery executes a DELETE query.
func (*DataBaseConnector) MrInsertMultiple ¶ added in v0.0.2
func (connect *DataBaseConnector) MrInsertMultiple(queryList []PreparedQuery) ([]sql.Result, error)
MrInsertMultiple executes multiple INSERT queries within a transaction.
func (*DataBaseConnector) MrInsertQuery ¶
func (connect *DataBaseConnector) MrInsertQuery(queryString string, args []interface{}) (sql.Result, error)
MrInsertQuery executes an INSERT query.
func (*DataBaseConnector) MrSelectMultiple ¶
func (connect *DataBaseConnector) MrSelectMultiple(queryString string, args []interface{}) (*sql.Rows, error)
MrSelectMultiple executes a query that returns multiple rows. Note: Caller is responsible for closing the returned *sql.Rows.
func (*DataBaseConnector) MrSelectSingle ¶
func (connect *DataBaseConnector) MrSelectSingle(queryString string, args []interface{}) (*sql.Row, error)
MrSelectSingle executes a query that returns at most one row.
func (*DataBaseConnector) MrUpdateMultiple ¶ added in v0.0.2
func (connect *DataBaseConnector) MrUpdateMultiple(queryList []PreparedQuery) ([]sql.Result, error)
MrUpdateMultiple executes multiple UPDATE queries within a transaction.
func (*DataBaseConnector) MrUpdateQuery ¶
func (connect *DataBaseConnector) MrUpdateQuery(queryString string, args []interface{}) (sql.Result, error)
MrUpdateQuery executes an UPDATE query.
func (*DataBaseConnector) PgCheckConnection ¶
func (connect *DataBaseConnector) PgCheckConnection() error
PgCheckConnection checks the PostgreSQL database connection.
func (*DataBaseConnector) PgCreateTable ¶
func (connect *DataBaseConnector) PgCreateTable(queryList []string) error
func (*DataBaseConnector) PgDeleteMultiple ¶
func (connect *DataBaseConnector) PgDeleteMultiple(queryList []PreparedQuery) ([]sql.Result, error)
PgDeleteMultiple executes multiple DELETE queries within a transaction.
func (*DataBaseConnector) PgDeleteQuery ¶
func (connect *DataBaseConnector) PgDeleteQuery(queryString string, args []interface{}) (sql.Result, error)
PgDeleteQuery executes a DELETE query.
func (*DataBaseConnector) PgInsertMultiple ¶
func (connect *DataBaseConnector) PgInsertMultiple(queryList []PreparedQuery) ([]sql.Result, error)
PgInsertMultiple executes multiple INSERT queries within a transaction.
func (*DataBaseConnector) PgInsertQuery ¶
func (connect *DataBaseConnector) PgInsertQuery(queryString string, returns []interface{}, args []interface{}) (sql.Result, error)
PgInsertQuery executes an INSERT query with optional RETURNING clause.
func (*DataBaseConnector) PgSelectMultiple ¶
func (connect *DataBaseConnector) PgSelectMultiple(queryString string, args []interface{}) (*sql.Rows, error)
PgSelectMultiple executes a query that returns multiple rows. Note: Caller is responsible for closing the returned *sql.Rows.
func (*DataBaseConnector) PgSelectSingle ¶
func (connect *DataBaseConnector) PgSelectSingle(queryString string, args []interface{}) (*sql.Row, error)
PgSelectSingle executes a query that returns at most one row.
func (*DataBaseConnector) PgUpdateMultiple ¶
func (connect *DataBaseConnector) PgUpdateMultiple(queryList []PreparedQuery) ([]sql.Result, error)
PgUpdateMultiple executes multiple UPDATE queries within a transaction.
func (*DataBaseConnector) PgUpdateQuery ¶
func (connect *DataBaseConnector) PgUpdateQuery(queryString string, args []interface{}) (sql.Result, error)
PgUpdateQuery executes an UPDATE query.
func (*DataBaseConnector) QueryBuilderInsert ¶ added in v1.2.0
func (connect *DataBaseConnector) QueryBuilderInsert(queryString string, args []interface{}) (sql.Result, error)
QueryBuilderInsert executes an INSERT query.
func (*DataBaseConnector) QueryBuilderOneRow ¶ added in v1.0.0
func (connect *DataBaseConnector) QueryBuilderOneRow(queryString string, args []interface{}) *sql.Row
QueryBuilderOneRow executes a query that returns at most one row.
func (*DataBaseConnector) QueryBuilderRows ¶ added in v1.0.0
func (connect *DataBaseConnector) QueryBuilderRows(queryString string, args []interface{}) (*sql.Rows, error)
QueryBuilderRows executes a query that returns multiple rows. Note: Caller is responsible for closing the returned *sql.Rows.
func (*DataBaseConnector) QueryBuilderUpdate ¶ added in v1.2.0
func (connect *DataBaseConnector) QueryBuilderUpdate(queryString string, args []interface{}) (sql.Result, error)
QueryBuilderUpdate executes an UPDATE query.
func (*DataBaseConnector) SqAnalyze ¶ added in v1.6.0
func (connect *DataBaseConnector) SqAnalyze() error
SqAnalyze performs ANALYZE operation to update statistics
func (*DataBaseConnector) SqCheckConnection ¶ added in v1.6.0
func (connect *DataBaseConnector) SqCheckConnection() error
SqCheckConnection checks SQLite database connection
func (*DataBaseConnector) SqCreateTable ¶ added in v1.6.0
func (connect *DataBaseConnector) SqCreateTable(queryList []string) error
SqCreateTable creates tables using transaction for SQLite
func (*DataBaseConnector) SqDeleteMultiple ¶ added in v1.6.0
func (connect *DataBaseConnector) SqDeleteMultiple(queryList []PreparedQuery) ([]sql.Result, error)
SqDeleteMultiple deletes multiple records with transaction
func (*DataBaseConnector) SqDeleteQuery ¶ added in v1.6.0
func (connect *DataBaseConnector) SqDeleteQuery(queryString string, args []interface{}) (sql.Result, error)
SqDeleteQuery deletes data from SQLite
func (*DataBaseConnector) SqEnableForeignKeys ¶ added in v1.6.0
func (connect *DataBaseConnector) SqEnableForeignKeys() error
SqEnableForeignKeys enables foreign key constraints
func (*DataBaseConnector) SqEnableWAL ¶ added in v1.6.0
func (connect *DataBaseConnector) SqEnableWAL() error
SqEnableWAL enables Write-Ahead Logging for better concurrency.
func (*DataBaseConnector) SqGetVersion ¶ added in v1.6.0
func (connect *DataBaseConnector) SqGetVersion() (string, error)
SqGetVersion returns SQLite version
func (*DataBaseConnector) SqInsertMultiple ¶ added in v1.6.0
func (connect *DataBaseConnector) SqInsertMultiple(queryList []PreparedQuery) ([]sql.Result, error)
SqInsertMultiple inserts multiple records with transaction
func (*DataBaseConnector) SqInsertQuery ¶ added in v1.6.0
func (connect *DataBaseConnector) SqInsertQuery(queryString string, args []interface{}) (sql.Result, error)
SqInsertQuery inserts data into SQLite
func (*DataBaseConnector) SqSelectMultiple ¶ added in v1.6.0
func (connect *DataBaseConnector) SqSelectMultiple(queryString string, args []interface{}) (*sql.Rows, error)
SqSelectMultiple queries multiple rows from SQLite
func (*DataBaseConnector) SqSelectSingle ¶ added in v1.6.0
func (connect *DataBaseConnector) SqSelectSingle(queryString string, args []interface{}) (*sql.Row, error)
SqSelectSingle queries single row from SQLite
func (*DataBaseConnector) SqUpdateMultiple ¶ added in v1.6.0
func (connect *DataBaseConnector) SqUpdateMultiple(queryList []PreparedQuery) ([]sql.Result, error)
SqUpdateMultiple updates multiple records with transaction
func (*DataBaseConnector) SqUpdateQuery ¶ added in v1.6.0
func (connect *DataBaseConnector) SqUpdateQuery(queryString string, args []interface{}) (sql.Result, error)
SqUpdateQuery updates data in SQLite
func (*DataBaseConnector) SqVacuum ¶ added in v1.6.0
func (connect *DataBaseConnector) SqVacuum() error
SqVacuum performs VACUUM operation to reclaim space
type PreparedQuery ¶ added in v1.4.0
type PreparedQuery struct {
Query string // SQL query string
Params []interface{} // Query parameters
}
PreparedQuery represents a prepared SQL query with parameters.
type QueryBuilder ¶ added in v1.0.0
type QueryBuilder struct {
// contains filtered or unexported fields
}
QueryBuilder is a flexible SQL query builder.
func BuildCountSelect ¶ added in v1.4.9
func BuildCountSelect(dbType DBType, table string, countColumn string) *QueryBuilder
BuildCountSelect creates a new SELECT COUNT query builder. If countColumn is empty, defaults to "*".
func BuildDelete ¶ added in v1.0.0
func BuildDelete(dbType DBType, table string) *QueryBuilder
BuildDelete creates a new DELETE query builder.
func BuildInsert ¶ added in v1.0.0
func BuildInsert(dbType DBType, table string) *QueryBuilder
BuildInsert creates a new INSERT query builder.
func BuildSelect ¶ added in v1.0.0
func BuildSelect(dbType DBType, table string, columns ...string) *QueryBuilder
BuildSelect creates a new SELECT query builder. If no columns are provided, defaults to "*".
func BuildUpdate ¶ added in v1.0.0
func BuildUpdate(dbType DBType, table string) *QueryBuilder
BuildUpdate creates a new UPDATE query builder.
func NewQueryBuilder ¶ added in v1.0.0
func NewQueryBuilder(dbType DBType, table string, columns ...string) *QueryBuilder
NewQueryBuilder
@ dbType: Database type (PostgreSQL, MariaDB, Mysql) @ table: Table name @ columns: Columns to select (variadic) @ Return: *QueryBuilder instance
func (*QueryBuilder) AddClause ¶ added in v1.4.2
func (qb *QueryBuilder) AddClause(clause *[]string, format string, values ...interface{}) *QueryBuilder
func (*QueryBuilder) AddSafeClause ¶ added in v1.4.2
func (qb *QueryBuilder) AddSafeClause(clause *[]string, format string, identifier string, extra string) *QueryBuilder
func (*QueryBuilder) AddWhereIfNotEmpty ¶ added in v1.0.0
func (qb *QueryBuilder) AddWhereIfNotEmpty(condition string, value interface{}) *QueryBuilder
AddWhereIfNotEmpty
@ column: Column name @ value: arguments @ Return: *QueryBuilder
func (*QueryBuilder) Aggregate ¶ added in v1.0.0
func (qb *QueryBuilder) Aggregate(function, column string) *QueryBuilder
Aggregate adds an aggregate function to the SELECT columns. Supported functions: COUNT, SUM, AVG, MIN, MAX, etc.
func (*QueryBuilder) Build ¶ added in v1.0.0
func (qb *QueryBuilder) Build() (string, []interface{}, error)
Build
@ Return: Final query string, arguments slice, and error if any
func (*QueryBuilder) Distinct ¶ added in v1.0.0
func (qb *QueryBuilder) Distinct() *QueryBuilder
Distinct adds DISTINCT to the SELECT query.
func (*QueryBuilder) GroupBy ¶ added in v1.0.0
func (qb *QueryBuilder) GroupBy(columns ...string) *QueryBuilder
GroupBy
@ columns: Columns for GROUP BY clause @ Return: *QueryBuilder with GROUP BY clause added
func (*QueryBuilder) Having ¶ added in v1.0.0
func (qb *QueryBuilder) Having(condition string, args ...interface{}) *QueryBuilder
Having
@ condition: HAVING clause condition with placeholders @ args: Query parameters for HAVING clause @ Return: *QueryBuilder with HAVING clause added
func (*QueryBuilder) InnerJoin ¶ added in v1.0.0
func (qb *QueryBuilder) InnerJoin(joinTable, onCondition string) *QueryBuilder
InnerJoin
@ joinTable: Table name to join @ onCondition: Join condition @ Return: *QueryBuilder with INNER JOIN added
func (*QueryBuilder) LeftJoin ¶ added in v1.0.0
func (qb *QueryBuilder) LeftJoin(joinTable, onCondition string) *QueryBuilder
LeftJoin
@ joinTable: Table name to join @ onCondition: Join condition @ Return: *QueryBuilder with LEFT JOIN added
func (*QueryBuilder) Limit ¶ added in v1.0.0
func (qb *QueryBuilder) Limit(limit int) *QueryBuilder
Limit
@ limit: Maximum number of rows to return @ Return: *QueryBuilder with LIMIT set
func (*QueryBuilder) Offset ¶ added in v1.0.0
func (qb *QueryBuilder) Offset(offset int) *QueryBuilder
Offset
@ offset: Number of rows to skip @ Return: *QueryBuilder with OFFSET set
func (*QueryBuilder) OrWhere ¶ added in v1.7.0
func (qb *QueryBuilder) OrWhere(condition string, args ...interface{}) *QueryBuilder
OrWhere adds an OR condition to the query. This creates a new condition group with OR logic.
func (*QueryBuilder) OrderBy ¶ added in v1.0.0
func (qb *QueryBuilder) OrderBy(column, direction string, allowedColumns map[string]bool) *QueryBuilder
OrderBy
@ column: Column name to order by @ direction: Order direction ("ASC" or "DESC") @ allowedColumns: Map of allowed columns for ordering @ Return: *QueryBuilder with ORDER BY clause added
func (*QueryBuilder) Returning ¶ added in v1.0.0
func (qb *QueryBuilder) Returning(clause string) *QueryBuilder
Returning
@ clause: RETURNING clause string (for PostgreSQL) @ Return: *QueryBuilder with RETURNING clause set
func (*QueryBuilder) RightJoin ¶ added in v1.0.0
func (qb *QueryBuilder) RightJoin(joinTable, onCondition string) *QueryBuilder
RightJoin
@ joinTable: Table name to join @ onCondition: Join condition @ Return: *QueryBuilder with RIGHT JOIN added
func (*QueryBuilder) Select ¶ added in v1.7.0
func (qb *QueryBuilder) Select(columns ...string) *QueryBuilder
Select adds additional columns to the SELECT clause. This method can be called multiple times to add more columns.
func (*QueryBuilder) Set ¶ added in v1.0.0
func (qb *QueryBuilder) Set(data map[string]interface{}) *QueryBuilder
Set adds data for UPDATE operations. Data should be a map of column names to values.
func (*QueryBuilder) Subquery ¶ added in v1.4.4
func (qb *QueryBuilder) Subquery(subquery *QueryBuilder, alias string) string
Support for subqueries
func (*QueryBuilder) Values ¶ added in v1.0.0
func (qb *QueryBuilder) Values(data map[string]interface{}) *QueryBuilder
Values adds data for INSERT operations. Data should be a map of column names to values.
func (*QueryBuilder) Where ¶ added in v1.0.0
func (qb *QueryBuilder) Where(condition string, args ...interface{}) *QueryBuilder
Where adds a WHERE condition to the query. Conditions are combined with AND. Use ? as placeholders for parameters.
func (*QueryBuilder) WhereBetween ¶ added in v1.0.0
func (qb *QueryBuilder) WhereBetween(column string, start, end interface{}) *QueryBuilder
WhereBetween
@ column: Column name for BETWEEN clause @ start: Start value @ end: End value @ Return: *QueryBuilder with BETWEEN clause added
func (*QueryBuilder) WhereIn ¶ added in v1.0.0
func (qb *QueryBuilder) WhereIn(column string, values []interface{}) *QueryBuilder
WhereIn
@ column: Column name for IN clause @ values: Values for the IN clause @ Return: *QueryBuilder with IN clause added