Add support for EXTRACT time/date function.
This commit is contained in:
parent
bc776f947b
commit
2101088d0e
15 changed files with 222 additions and 14 deletions
|
|
@ -224,6 +224,12 @@ var REGEXP_LIKE = jet.REGEXP_LIKE
|
|||
|
||||
//----------------- Date/Time Functions and Operators ------------//
|
||||
|
||||
// EXTRACT function retrieves subfields such as year or hour from date/time values
|
||||
// EXTRACT(DAY, User.CreatedAt)
|
||||
func EXTRACT(field unitType, from Expression) IntegerExpression {
|
||||
return IntExp(jet.EXTRACT(string(field), from))
|
||||
}
|
||||
|
||||
// CURRENT_DATE returns current date
|
||||
var CURRENT_DATE = jet.CURRENT_DATE
|
||||
|
||||
|
|
|
|||
|
|
@ -39,10 +39,11 @@ const (
|
|||
type Interval = jet.Interval
|
||||
|
||||
// INTERVAL creates new temporal interval.
|
||||
// In a case of MICROSECOND, SECOND, MINUTE, HOUR, DAY, WEEK, MONTH, QUARTER, YEAR unit type
|
||||
// value parameter should be number. For example: INTERVAL(1, DAY)
|
||||
// In a case of other unit types, value should be string with appropriate format.
|
||||
// For example: INTERVAL("10:08:50", HOUR_SECOND)
|
||||
// In a case of MICROSECOND, SECOND, MINUTE, HOUR, DAY, WEEK, MONTH, QUARTER, YEAR unit type
|
||||
// value parameter has to be a number.
|
||||
// INTERVAL(1, DAY)
|
||||
// In a case of other unit types, value should be string with appropriate format.
|
||||
// INTERVAL("10:08:50", HOUR_SECOND)
|
||||
func INTERVAL(value interface{}, unitType unitType) Interval {
|
||||
switch unitType {
|
||||
case MICROSECOND, SECOND, MINUTE, HOUR, DAY, WEEK, MONTH, QUARTER, YEAR:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue