Allow start/end dates in metrics to be simple strings and function calls #28
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description of the changes
As discussed within Issue #27. This PR dynamically detects the contents in
start_date
andend_date
and decides if it needs to wrap the user input in single quotes.start_date
contains a function call, then leave it un-quoted so the call will be executedcast('dateadd(day, -1, date_trunc("day", getdate()))' as date) as upper_bound
state_date
contains only a basic date string, wrap it in quotescast('202201-01' as date) as upper_bound
start_date
isn't definedmax(case when has_data then period end) over () {% endif %} as upper_bound
How were the changes tests
I tested this locally on my branch using a mix of simple strings and function calls for
start_date
andend_date
. I thenselect * from metric;
on a Snowflake table and view.Metric Definition
Compiled SQL
Signed Individual Contributor Agreement?
Additional Context
Possible improvements
(
since most databases I have used call functions likeget_date()