queryer fixes checkpoint
This commit is contained in:
@ -39,10 +39,6 @@ crate-type = ["cdylib", "lib"]
|
|||||||
name = "pgrx_embed_jspg"
|
name = "pgrx_embed_jspg"
|
||||||
path = "src/bin/pgrx_embed.rs"
|
path = "src/bin/pgrx_embed.rs"
|
||||||
|
|
||||||
[[bin]]
|
|
||||||
name = "ast_explore"
|
|
||||||
path = "src/bin/ast_explore.rs"
|
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
default = ["pg18"]
|
default = ["pg18"]
|
||||||
pg18 = ["pgrx/pg18", "pgrx-tests/pg18" ]
|
pg18 = ["pgrx/pg18", "pgrx-tests/pg18" ]
|
||||||
|
|||||||
@ -1,17 +0,0 @@
|
|||||||
use sqlparser::dialect::PostgreSqlDialect;
|
|
||||||
use sqlparser::parser::Parser;
|
|
||||||
use std::env;
|
|
||||||
|
|
||||||
fn main() {
|
|
||||||
let sql = "SELECT t1_obj_t1_addresses_t1_target_t2.archived, t1.id FROM person t1 JOIN address t1_obj_t1_addresses ON true";
|
|
||||||
let dialect = PostgreSqlDialect {};
|
|
||||||
|
|
||||||
match Parser::parse_sql(&dialect, sql) {
|
|
||||||
Ok(ast) => {
|
|
||||||
println!("{:#?}", ast);
|
|
||||||
}
|
|
||||||
Err(e) => {
|
|
||||||
println!("Error: {:?}", e);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -457,8 +457,13 @@ impl SqlCompiler {
|
|||||||
.cloned()
|
.cloned()
|
||||||
.unwrap_or_else(|| "err".to_string());
|
.unwrap_or_else(|| "err".to_string());
|
||||||
|
|
||||||
|
let entity_alias = table_aliases
|
||||||
|
.get("entity")
|
||||||
|
.cloned()
|
||||||
|
.unwrap_or_else(|| base_alias.clone());
|
||||||
|
|
||||||
let mut where_clauses = Vec::new();
|
let mut where_clauses = Vec::new();
|
||||||
where_clauses.push(format!("NOT {}.archived", base_alias));
|
where_clauses.push(format!("NOT {}.archived", entity_alias));
|
||||||
|
|
||||||
for (i, filter_key) in filter_keys.iter().enumerate() {
|
for (i, filter_key) in filter_keys.iter().enumerate() {
|
||||||
let mut parts = filter_key.split(':');
|
let mut parts = filter_key.split(':');
|
||||||
|
|||||||
Reference in New Issue
Block a user