Fix date formatting in query
This commit is contained in:
parent
4e2a87ec97
commit
0534096ad2
@ -2,8 +2,9 @@ package cockroach
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"github.com/cortezaproject/corteza-server/pkg/ql"
|
||||
"strings"
|
||||
|
||||
"github.com/cortezaproject/corteza-server/pkg/ql"
|
||||
)
|
||||
|
||||
func sqlFunctionHandler(f ql.Function) (ql.ASTNode, error) {
|
||||
@ -11,7 +12,7 @@ func sqlFunctionHandler(f ql.Function) (ql.ASTNode, error) {
|
||||
case "QUARTER", "YEAR":
|
||||
return ql.MakeFormattedNode(fmt.Sprintf("EXTRACT(%s FROM %%s::date)", f.Name), f.Arguments...), nil
|
||||
case "DATE_FORMAT":
|
||||
return ql.MakeFormattedNode("TO_CHAR(%s, %s)", f.Arguments...), nil
|
||||
return ql.MakeFormattedNode("TO_CHAR(%s::TIMESTAMPTZ, %s::TEXT)", f.Arguments...), nil
|
||||
case "DATE":
|
||||
return ql.MakeFormattedNode("%s::DATE", f.Arguments...), nil
|
||||
case "DATE_ADD", "DATE_SUB", "STD":
|
||||
|
||||
@ -42,7 +42,7 @@ func sqlFunctionHandler(f ql.Function) (ql.ASTNode, error) {
|
||||
case "QUARTER", "YEAR":
|
||||
return ql.MakeFormattedNode(fmt.Sprintf("EXTRACT(%s FROM %%s::date)", f.Name), f.Arguments...), nil
|
||||
case "DATE_FORMAT":
|
||||
return ql.MakeReplacedFormattedNode("TO_CHAR(%s, %s)", translateDateFormatParams, f.Arguments...), nil
|
||||
return ql.MakeReplacedFormattedNode("TO_CHAR(%s::TIMESTAMPTZ, %s::TEXT)", translateDateFormatParams, f.Arguments...), nil
|
||||
case "TIMESTAMP":
|
||||
return ql.MakeFormattedNode("TIMESTAMPTZ(%s::TIMESTAMPTZ)", f.Arguments...), nil
|
||||
case "DATE":
|
||||
|
||||
@ -1676,6 +1676,7 @@ func testComposeRecords(t *testing.T, s store.ComposeRecords) {
|
||||
{"datetime1 > '2020-10-02T00:00:02'", "1003;1004"},
|
||||
{"date1 > '2020-10-02'", "2003;2004"},
|
||||
{"time1 > '02:00:00'", "3003;3004"},
|
||||
{"(TIMESTAMP(DATE_FORMAT(datetime1, '%Y-%m-%dT%H:%i:00Z')) = TIMESTAMP(DATE_FORMAT('2020-10-02T00:00:02', '%Y-%m-%dT%H:%i:00Z')))", "1002"},
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user