alisql
This is library to analize SQL with jinja template.
Example
Get dependecies
First, create sql like Jinja.
-- src/sample_sqls/level1/sample.sql
select
u.*
, r.*
from {{ ref("db", "users") }} as u
left join {{ ref("role") }} as r on
u.id = r.user_id
-- src/sample_sqls/sample2.sql
select
u.*
, r.*
from {{ ref("db", "sales") }} as u
left join {{ ref("db", "sale_detail") }} as r on
u.id = r.sale_id
Use alias lib from main function.
use alias;
Result is..
d =
Get mermaid graph
use alisql;
Variable m is
graph TD;
db.users --> sample;
role --> sample;
db.sales --> sample2;
db.sale_detail --> sample2;
This is shown in the following graph.
graph TD;
db.users --> sample;
role --> sample;
db.sales --> sample2;
db.sale_detail --> sample2;