Documentation ¶
Index ¶
- Constants
- Variables
- func SqlConvertBool(value string) (interface{}, error)
- func SqlConvertDate(value string) (interface{}, error)
- func SqlConvertDateTime(value string) (interface{}, error)
- func SqlConvertFloat(value string) (interface{}, error)
- func SqlConvertISO8601(value string) (interface{}, error)
- func SqlConvertInt(value string) (interface{}, error)
- func SqlConvertString(value string) (interface{}, error)
- func SqlConvertTime(value string) (interface{}, error)
- func ToSql(table string, query Query, translations SqlTranslations) (string, []interface{}, error)
- func ToSqlGroup(query Query, translations SqlTranslations) (string, error)
- func ToSqlGroupSlice(query Query, translations SqlTranslations) ([]string, error)
- func ToSqlLimit(query Query) (int, error)
- func ToSqlOffset(query Query) (int, error)
- func ToSqlOrderBy(query Query, translations SqlTranslations) (string, error)
- func ToSqlOrderBySlice(query Query, translations SqlTranslations) ([]string, error)
- func ToSqlPreload(query Query, preloadable SqlPreloadable) ([]string, error)
- func ToSqlSelect(query Query, translations SqlTranslations) (string, error)
- func ToSqlSelectSlice(query Query, translations SqlTranslations) ([]string, error)
- func ToSqlWhere(query Query, translations SqlTranslations) (string, []interface{}, error)
- type Condition
- type Query
- type Sort
- type SqlFieldTranslation
- type SqlPlan
- type SqlPreloadable
- type SqlTranslations
Constants ¶
const ( OpIsNull = "isnull" // IS NULL OpEq = "eq" // EQUALS OpNe = "ne" // NOT EQUALS OpGt = "gt" // GREATER THAN OpLt = "lt" // LESS THAN OpGte = "gte" // GREATER THAN OR EQUALS OpLte = "lte" // LESS THAN OR EQUALS OpContain = "contain" // CONTAINS OpNcontain = "ncontain" // NOT CONTAINS OpContains = "contains" // CONTAINS CASE SENSITIVE OpNcontains = "ncontains" // NOT CONTAINS CASE SENSITIVE OpIn = "in" // IN OpNin = "nin" // NOT IN )
Variables ¶
Functions ¶
func SqlConvertBool ¶
SqlConvertString is a TypeConverter that converts a string to a string.
func SqlConvertDate ¶
SqlConvertString is a TypeConverter that converts a string to a string.
func SqlConvertDateTime ¶
SqlConvertString is a TypeConverter that converts a string to a string.
func SqlConvertFloat ¶
SqlConvertString is a TypeConverter that converts a string to a string.
func SqlConvertISO8601 ¶
SqlConvertString is a TypeConverter that converts a string to a string.
func SqlConvertInt ¶
SqlConvertString is a TypeConverter that converts a string to a string.
func SqlConvertString ¶
SqlConvertString is a TypeConverter that converts a string to a string.
func SqlConvertTime ¶
SqlConvertString is a TypeConverter that converts a string to a string.
func ToSql ¶
func ToSql(table string, query Query, translations SqlTranslations) (string, []interface{}, error)
func ToSqlGroup ¶
func ToSqlGroup(query Query, translations SqlTranslations) (string, error)
ToSqlGroup converts a Query to a SQL GROUP BY statement.
func ToSqlGroupSlice ¶
func ToSqlGroupSlice(query Query, translations SqlTranslations) ([]string, error)
ToSqlGroupSlice converts a Query to a slice of SQL GROUP BY statements.
func ToSqlLimit ¶
ToSqlLimit converts a Query to a SQL LIMIT statement.
func ToSqlOffset ¶
ToSqlOffset converts a Query to a SQL OFFSET statement.
func ToSqlOrderBy ¶
func ToSqlOrderBy(query Query, translations SqlTranslations) (string, error)
ToSqlOrderBy converts a Query to a SQL ORDER BY statement.
func ToSqlOrderBySlice ¶
func ToSqlOrderBySlice(query Query, translations SqlTranslations) ([]string, error)
ToSqlOrderBySlice converts a Query to a slice of SQL ORDER BY statements.
func ToSqlPreload ¶
func ToSqlPreload(query Query, preloadable SqlPreloadable) ([]string, error)
ToSqlPreload converts a Query to a SQL preload statement.
func ToSqlSelect ¶
func ToSqlSelect(query Query, translations SqlTranslations) (string, error)
ToSqlSelect converts a Query to a SQL SELECT statement.
func ToSqlSelectSlice ¶
func ToSqlSelectSlice(query Query, translations SqlTranslations) ([]string, error)
ToSqlSelectSlice converts a Query to a slice of SQL SELECT statements.
func ToSqlWhere ¶
func ToSqlWhere(query Query, translations SqlTranslations) (string, []interface{}, error)
ToSqlWhere converts a Query to a SQL WHERE statement.
Types ¶
type Condition ¶
type Condition struct { Field string // Field is the name of the field to filter on. Op string // Op is the operation to perform. Values []string // Values is a list of values to filter on. }
Op is a string representing a valid operation.
type Query ¶
type Query struct { Conditions []Condition With []string Group []string Accumulator []string Sort []Sort Limit int Skip int }
Query is a query to filter on.
func FromQueryString ¶
FromQueryString returns a Query from a query string.
type SqlFieldTranslation ¶
type SqlFieldTranslation struct { Column string Alias string TypeConverter func(value string) (interface{}, error) }
SqlFieldTranslation is a translation from a field name to a SQL field.
type SqlPlan ¶
type SqlPlan struct { Select string Where string WhereArgs []interface{} Group string Order string Limit int Offset int Preload []string }
SqlPlan is a plan for executing a query.
func ToSqlPlan ¶
func ToSqlPlan(query Query, translations SqlTranslations, preloadable SqlPreloadable) (SqlPlan, error)
ToSqlPlan converts a Query to a SqlPlan.
type SqlPreloadable ¶
SqlPreloadable is a map of preloads (key) and their corresponding model (value).
type SqlTranslations ¶
type SqlTranslations map[string]SqlFieldTranslation
SqlTranslations is a map of field names to SQL translations.