SQLDateModifier
A date modifier for SQLite date functions.
enum SQLDateModifier
Related SQLite documentation: https://www.sqlite.org/lang_datefunc.html
A date modifier for SQLite date functions.
enum SQLDateModifier
Related SQLite documentation: https://www.sqlite.org/lang_datefunc.html
import GRDB
A toolkit for SQLite databases, with a focus on application development
case second(Double)
Adds the specified amount of seconds
case minute(Int)
Adds the specified amount of minutes
case hour(Int)
Adds the specified amount of hours
case day(Int)
Adds the specified amount of days
case month(Int)
Adds the specified amount of months
case year(Int)
Adds the specified amount of years
case startOfDay
Shifts the date backwards to the beginning of the current day
case startOfMonth
Shifts the date backwards to the beginning of the current month
case startOfYear
Shifts the date backwards to the beginning of the current year
case weekday(Int)
See https://www.sqlite.org/lang_datefunc.html
case unixEpoch
See https://www.sqlite.org/lang_datefunc.html
case localTime
See https://www.sqlite.org/lang_datefunc.html
case utc
See https://www.sqlite.org/lang_datefunc.html
func abs(_ value: some SQLSpecificExpressible) -> SQLExpression
The ABS
SQL function.
func average(_ value: some SQLSpecificExpressible) -> SQLExpression
The AVG
SQL function.
func average(_ value: some SQLSpecificExpressible, filter: some SQLSpecificExpressible) -> SQLExpression
The AVG
SQL function.
var capitalized: SQLExpression { get }
An SQL expression that calls the Foundation String.capitalized
property.
func cast(_ expression: some SQLSpecificExpressible, as storageClass: Database.StorageClass) -> SQLExpression
The CAST
SQL function.
func coalesce(_ values: some Collection<any SQLSpecificExpressible>) -> SQLExpression
The COALESCE
SQL function.
func count(_ counted: some SQLSpecificExpressible) -> SQLExpression
The COUNT
SQL function.
func count(distinct value: some SQLSpecificExpressible) -> SQLExpression
The COUNT(DISTINCT)
SQL function.
func dateTime(_ value: some SQLSpecificExpressible, _ modifiers: SQLDateModifier...) -> SQLExpression
The DATETIME
SQL function.
func julianDay(_ value: some SQLSpecificExpressible, _ modifiers: SQLDateModifier...) -> SQLExpression
The JULIANDAY
SQL function.
func length(_ value: some SQLSpecificExpressible) -> SQLExpression
The LENGTH
SQL function.
func like(_ pattern: some SQLExpressible, escape: (any SQLExpressible)? = nil) -> SQLExpression
The LIKE
SQL operator.
var localizedCapitalized: SQLExpression { get }
An SQL expression that calls the Foundation String.localizedCapitalized
property.
var localizedLowercased: SQLExpression { get }
An SQL expression that calls the Foundation String.localizedLowercase
property.
var localizedUppercased: SQLExpression { get }
An SQL expression that calls the Foundation String.localizedUppercase
property.
var lowercased: SQLExpression { get }
An SQL expression that calls the Swift String.lowercased()
method.
func min(_ value: some SQLSpecificExpressible) -> SQLExpression
The MIN
SQL function.
func min(_ value: some SQLSpecificExpressible, filter: some SQLSpecificExpressible) -> SQLExpression
The MIN
SQL function.
func max(_ value: some SQLSpecificExpressible) -> SQLExpression
The MAX
SQL function.
func max(_ value: some SQLSpecificExpressible, filter: some SQLSpecificExpressible) -> SQLExpression
The MAX
SQL function.
func sum(_ value: some SQLSpecificExpressible) -> SQLExpression
The SUM
SQL function.
func sum(_ value: some SQLSpecificExpressible, filter: some SQLSpecificExpressible) -> SQLExpression
The SUM
SQL function.
func total(_ value: some SQLSpecificExpressible) -> SQLExpression
The TOTAL
SQL function.
func total(_ value: some SQLSpecificExpressible, filter: some SQLSpecificExpressible) -> SQLExpression
The TOTAL
SQL function.
var uppercased: SQLExpression { get }
An SQL expression that calls the Swift String.uppercased()
method.
protocol SQLExpressible
A type that can be used as an SQL expression.
protocol SQLOrderingTerm
A type that can be used as an SQL ordering term.
protocol SQLSelectable
A type that can be used as SQL result columns.
protocol SQLSpecificExpressible : SQLExpressible, SQLOrderingTerm, SQLSelectable
A database-specific type that can be used as an SQL expression.
protocol Sendable
var sqlExpression: SQLExpression { get }
var asJSON: AnySQLJSONExpressible { get }
Returns an expression that is interpreted as a JSON value.
var asc: SQLOrdering { get }
An ordering term for ascending order (nulls first).
var ascNullsLast: SQLOrdering { get }
An ordering term for ascending order (nulls last).
var desc: SQLOrdering { get }
An ordering term for descending order (nulls last).
var descNullsFirst: SQLOrdering { get }
An ordering term for descending order (nulls first).
var sqlOrdering: SQLOrdering { get }
var sqlSelection: SQLSelection { get }
static func ! (value: Self) -> SQLExpression
A negated logical SQL expression.
static func != (lhs: (any SQLExpressible)?, rhs: Self) -> SQLExpression
Compares two SQL expressions.
static func != (lhs: Bool, rhs: Self) -> SQLExpression
The <>
SQL operator.
static func != (lhs: Self, rhs: (any SQLExpressible)?) -> SQLExpression
Compares two SQL expressions.
static func != (lhs: Self, rhs: Bool) -> SQLExpression
The <>
SQL operator.
static func != (lhs: Self, rhs: some SQLSpecificExpressible) -> SQLExpression
The <>
SQL operator.
static func !== (lhs: (any SQLExpressible)?, rhs: Self) -> SQLExpression
The IS NOT
SQL operator.
static func !== (lhs: Self, rhs: (any SQLExpressible)?) -> SQLExpression
The IS NOT
SQL operator.
static func !== (lhs: Self, rhs: some SQLSpecificExpressible) -> SQLExpression
The IS NOT
SQL operator.
static func && (lhs: some SQLExpressible, rhs: Self) -> SQLExpression
The AND
SQL operator.
static func && (lhs: Self, rhs: some SQLExpressible) -> SQLExpression
The AND
SQL operator.
static func && (lhs: Self, rhs: some SQLSpecificExpressible) -> SQLExpression
The AND
SQL operator.
static func & (lhs: some SQLExpressible, rhs: Self) -> SQLExpression
The &
SQL operator.
static func & (lhs: Self, rhs: some SQLExpressible) -> SQLExpression
The &
SQL operator.
static func & (lhs: Self, rhs: some SQLSpecificExpressible) -> SQLExpression
The &
SQL operator.
static func * (lhs: some SQLExpressible, rhs: Self) -> SQLExpression
The *
SQL operator.
static func * (lhs: Self, rhs: some SQLExpressible) -> SQLExpression
The *
SQL operator.
static func * (lhs: Self, rhs: some SQLSpecificExpressible) -> SQLExpression
The *
SQL operator.
static func + (lhs: some SQLExpressible, rhs: Self) -> SQLExpression
The +
SQL operator.
static func + (lhs: Self, rhs: some SQLExpressible) -> SQLExpression
The +
SQL operator.
static func + (lhs: Self, rhs: some SQLSpecificExpressible) -> SQLExpression
The +
SQL operator.
static func - (value: Self) -> SQLExpression
The -
SQL operator.
static func - (lhs: some SQLExpressible, rhs: Self) -> SQLExpression
The -
SQL operator.
static func - (lhs: Self, rhs: some SQLExpressible) -> SQLExpression
The -
SQL operator.
static func - (lhs: Self, rhs: some SQLSpecificExpressible) -> SQLExpression
The -
SQL operator.
static func / (lhs: some SQLExpressible, rhs: Self) -> SQLExpression
The /
SQL operator.
static func / (lhs: Self, rhs: some SQLExpressible) -> SQLExpression
The /
SQL operator.
static func / (lhs: Self, rhs: some SQLSpecificExpressible) -> SQLExpression
The /
SQL operator.
static func < (lhs: some SQLExpressible, rhs: Self) -> SQLExpression
The <
SQL operator.
static func < (lhs: Self, rhs: some SQLExpressible) -> SQLExpression
The <
SQL operator.
static func < (lhs: Self, rhs: some SQLSpecificExpressible) -> SQLExpression
The <
SQL operator.
static func << (lhs: some SQLExpressible, rhs: Self) -> SQLExpression
The <<
SQL operator.
static func << (lhs: Self, rhs: some SQLExpressible) -> SQLExpression
The <<
SQL operator.
static func << (lhs: Self, rhs: some SQLSpecificExpressible) -> SQLExpression
The <<
SQL operator.
static func <= (lhs: some SQLExpressible, rhs: Self) -> SQLExpression
The <=
SQL operator.
static func <= (lhs: Self, rhs: some SQLExpressible) -> SQLExpression
The <=
SQL operator.
static func <= (lhs: Self, rhs: some SQLSpecificExpressible) -> SQLExpression
The <=
SQL operator.
static func == (lhs: (any SQLExpressible)?, rhs: Self) -> SQLExpression
Compares two SQL expressions.
static func == (lhs: Bool, rhs: Self) -> SQLExpression
The =
SQL operator.
static func == (lhs: Self, rhs: (any SQLExpressible)?) -> SQLExpression
Compares two SQL expressions.
static func == (lhs: Self, rhs: Bool) -> SQLExpression
The =
SQL operator.
static func == (lhs: Self, rhs: some SQLSpecificExpressible) -> SQLExpression
The =
SQL operator.
static func === (lhs: (any SQLExpressible)?, rhs: Self) -> SQLExpression
The IS
SQL operator.
static func === (lhs: Self, rhs: (any SQLExpressible)?) -> SQLExpression
The IS
SQL operator.
static func === (lhs: Self, rhs: some SQLSpecificExpressible) -> SQLExpression
The IS
SQL operator.
static func > (lhs: some SQLExpressible, rhs: Self) -> SQLExpression
The >
SQL operator.
static func > (lhs: Self, rhs: some SQLExpressible) -> SQLExpression
The >
SQL operator.
static func > (lhs: Self, rhs: some SQLSpecificExpressible) -> SQLExpression
The >
SQL operator.
static func >= (lhs: some SQLExpressible, rhs: Self) -> SQLExpression
The >=
SQL operator.
static func >= (lhs: Self, rhs: some SQLExpressible) -> SQLExpression
The >=
SQL operator.
static func >= (lhs: Self, rhs: some SQLSpecificExpressible) -> SQLExpression
The >=
SQL operator.
static func >> (lhs: some SQLExpressible, rhs: Self) -> SQLExpression
The >>
SQL operator.
static func >> (lhs: Self, rhs: some SQLExpressible) -> SQLExpression
The >>
SQL operator.
static func >> (lhs: Self, rhs: some SQLSpecificExpressible) -> SQLExpression
The >>
SQL operator.
static func ?? (lhs: Self, rhs: some SQLExpressible) -> SQLExpression
The IFNULL
SQL function.
static func | (lhs: some SQLExpressible, rhs: Self) -> SQLExpression
The |
SQL operator.
static func | (lhs: Self, rhs: some SQLExpressible) -> SQLExpression
The |
SQL operator.
static func | (lhs: Self, rhs: some SQLSpecificExpressible) -> SQLExpression
The |
SQL operator.
static func || (lhs: some SQLExpressible, rhs: Self) -> SQLExpression
The OR
SQL operator.
static func || (lhs: Self, rhs: some SQLExpressible) -> SQLExpression
The OR
SQL operator.
static func || (lhs: Self, rhs: some SQLSpecificExpressible) -> SQLExpression
The OR
SQL operator.
static func ~ (value: Self) -> SQLExpression
The ~
SQL operator.
func collating(_ collation: DatabaseCollation) -> SQLExpression
Returns a collated expression.
func collating(_ collation: Database.CollationName) -> SQLExpression
Returns a collated expression.
func forKey(_ key: String) -> SQLSelection
Returns an aliased result column.