opensearch-project / sql-jdbc

This is the driver for JDBC connectivity to a cluster running with OpenSearch SQL support.
Apache License 2.0
14 stars 25 forks source link

Add functions for date type in the TACO (#5) #91

Closed GumpacG closed 1 year ago

GumpacG commented 1 year ago

Description

The manifest file change allows for Tableau to use time columns without having to cast. The dialect file changes fixes and supports the following test files and test cases:

TestPath Test Case
/opt/homebrew/lib/python3.11/site-packages/tdvt/logicaltests/setup/calcs/setup.Filter.Date_In.simple_lower.xml  
/opt/homebrew/lib/python3.11/site-packages/tdvt/logicaltests/setup/calcs/setup.Filter.Date_In_Time.simple_lower.xml  
/opt/homebrew/lib/python3.11/site-packages/tdvt/exprtests/standard/setup.calcs_data.time.txt time1
/opt/homebrew/lib/python3.11/site-packages/tdvt/exprtests/standard/setup.date.math.date_minus_date.txt [date2] - [date2]
/opt/homebrew/lib/python3.11/site-packages/tdvt/exprtests/standard/setup.operator.date.equality.txt date0 == 7/4/1972
/opt/homebrew/lib/python3.11/site-packages/tdvt/exprtests/standard/setup.operator.date.gt.txt date0 > 11/12/1975
/opt/homebrew/lib/python3.11/site-packages/tdvt/exprtests/standard/setup.operator.date.gte.txt date0 >= 11/12/1975
/opt/homebrew/lib/python3.11/site-packages/tdvt/exprtests/standard/setup.operator.date.lt.txt date0 < 11/12/1975
/opt/homebrew/lib/python3.11/site-packages/tdvt/exprtests/standard/setup.operator.date.lte.txt date0 <= 11/12/1975
/opt/homebrew/lib/python3.11/site-packages/tdvt/exprtests/standard/setup.operator.date.minus_datetime.txt date0 - datetime0
/opt/homebrew/lib/python3.11/site-packages/tdvt/exprtests/standard/setup.operator.date.not_equal.txt date0 != 11/12/1975
/opt/homebrew/lib/python3.11/site-packages/tdvt/exprtests/standard/setup.date.max.txt MAX([date2], [date3])
/opt/homebrew/lib/python3.11/site-packages/tdvt/exprtests/standard/setup.date.min.txt MIN([date2], [date3])
/opt/homebrew/lib/python3.11/site-packages/tdvt/exprtests/standard/setup.date.B639952.txt SUM([date0]-1-[date1])
/opt/homebrew/lib/python3.11/site-packages/tdvt/exprtests/standard/setup.date.B639952.txt SUM([date0]+300-[date1])
/opt/homebrew/lib/python3.11/site-packages/tdvt/exprtests/standard/setup.date.B639952.txt [date0]-([date1]-1-[date2])
/opt/homebrew/lib/python3.11/site-packages/tdvt/exprtests/standard/setup.date.B639952.txt [date1]-([date3]+500-[date2])
/opt/homebrew/lib/python3.11/site-packages/tdvt/exprtests/standard/setup.date.B639952.txt [date1]-([date3]+500-[date2])+([date3]-[date0])
/opt/homebrew/lib/python3.11/site-packages/tdvt/exprtests/standard/setup.date.B639952.txt SUM(([date3]-400-[date0])+([date3]+500-[date2]))
/opt/homebrew/lib/python3.11/site-packages/tdvt/exprtests/standard/setup.date.B639952.txt SUM([date3]-1-(date(dateadd('month', 3, 2004-04-15 )))+1)
/opt/homebrew/lib/python3.11/site-packages/tdvt/exprtests/standard/setup.date.math.txt [date2] =  [date2]
/opt/homebrew/lib/python3.11/site-packages/tdvt/exprtests/standard/setup.date.math.txt [date2] >  [date2]
/opt/homebrew/lib/python3.11/site-packages/tdvt/exprtests/standard/setup.date.math.txt [date2] >= [date2]
/opt/homebrew/lib/python3.11/site-packages/tdvt/exprtests/standard/setup.date.math.txt [date2] <  [date2]
/opt/homebrew/lib/python3.11/site-packages/tdvt/exprtests/standard/setup.date.math.txt [date2] <= [date2]
/opt/homebrew/lib/python3.11/site-packages/tdvt/exprtests/standard/setup.date.math.txt [date2] <> [date2]
/opt/homebrew/lib/python3.11/site-packages/tdvt/exprtests/standard/setup.logical.txt min(date0,date1)

Check List

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license. For more information on following Developer Certificate of Origin and signing off your commits, please check here.