test_joins/
test_joins.rs

1#![allow(unused)]
2use qail_core::parse;
3use qail_core::transpiler::ToSql;
4
5fn main() {
6    let q2 = "get a left join b on b.x = a.x left join c on c.y = a.y fields a.id";
7    println!(
8        "2 JOINs: {}",
9        parse(q2)
10            .map(|_| "OK".to_string())
11            .unwrap_or_else(|e| e.to_string())
12    );
13
14    let q3 = "get a left join b on b.x = a.x left join c on c.y = a.y left join d on d.z = a.z fields a.id";
15    println!(
16        "3 JOINs: {}",
17        parse(q3)
18            .map(|_| "OK".to_string())
19            .unwrap_or_else(|e| e.to_string())
20    );
21
22    let q7 = "get a left join b on b.x = a.x left join c on c.y = a.y left join d on d.z = a.z left join e on e.w = a.w left join f on f.v = a.v left join g on g.u = a.u left join h on h.t = a.t fields a.id";
23    println!(
24        "7 JOINs: {}",
25        parse(q7)
26            .map(|c| format!("OK - {} joins", c.joins.len()))
27            .unwrap_or_else(|e| e.to_string())
28    );
29}