I am trying to filter a table on slate by doing this query
SELECT *
from "foundry_sync"."master_dataset"
WHERE event_date >= ( {{w_date_range_picker.fromDateValue}} )
AND event_date <= ( {{w_date_range_picker.toDateValue}} )
But I am getting the error
Hint: No operator matches the given name and argument types. You might need to add explicit type casts.
Any idea on how to make such a call?
A date picker value has this format: 2023-03-14
.
If you click on the "Preview Rendered Query" button (little icon looking like an eye in the bottom right corner of your query window) you will see that when rendering a query it will be placed in that literal format into the query. Sql will then process that as an arithmetic operation and evaluate it into a number.
To avoid that you will need to add '
'
around the date picker value.
Additionally you will have to wrap the column name into "
"
.
That transforms your query into:
SELECT *
from "foundry_sync"."master_dataset"
WHERE "event_date" >= ( '{{w_date_range_picker.fromDateValue}}' )
AND "event_date" <= ( '{{w_date_range_picker.toDateValue}}' )
If this doesn't fix your problem you can add explicit casting:
CAST ('value' AS DATE)
or CAST ("column_name" AS DATE)