Jinja2 templating
Supported connections: BigQuery, Postgres, Presto, Redshift, Snowflake
All metrics calculations and executed SQL queries will be passed through the Jinja2 engine, so any basic Jinja2 templating, as you might expect, is supported. If you're not familiar with Jinja2, a basic example is shown below.
Reusable templates
On top of this, we provide support for reusable templates, which should be saved in the ~/.whale/templates
folder and named after the name of the warehouse connection that you would like to use this template for. Connection names can be found by running wh connections
, in the name
field of each yaml block.
For example, consider the following BigQuery connection setup:
The name of the connection here is bq-1
, so you'll need to create a file as follows:
And the template within will automatically be pre-pended to queries against this connection.
Template example
The following snippet enables the value {{ last_day }}
to be used to performantly get data from the latest partition in BigQuery.
The following query, then, could be run by whale
:
Last updated