Compare commits

...

3 Commits

Author SHA1 Message Date
70a27b430d version: 1.0.70 2026-03-17 05:42:40 -04:00
e078b8a74b queryer alias fixes installed 2026-03-17 05:42:27 -04:00
c2c0e62c2d queryer fixes checkpoint 2026-03-17 05:12:03 -04:00
5 changed files with 46 additions and 62 deletions

View File

@ -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" ]

View File

@ -905,7 +905,7 @@
" 'type', t1_obj_t2.type)", " 'type', t1_obj_t2.type)",
"FROM agreego.person t1_obj_t1", "FROM agreego.person t1_obj_t1",
"JOIN agreego.entity t1_obj_t2 ON t1_obj_t2.id = t1_obj_t1.id", "JOIN agreego.entity t1_obj_t2 ON t1_obj_t2.id = t1_obj_t1.id",
"WHERE NOT t1_obj_t1.archived)" "WHERE NOT t1_obj_t2.archived)"
] ]
] ]
} }
@ -938,7 +938,7 @@
" FROM agreego.address t1_obj_t2_addresses_t3_target_t1", " FROM agreego.address t1_obj_t2_addresses_t3_target_t1",
" JOIN agreego.entity t1_obj_t2_addresses_t3_target_t2 ON t1_obj_t2_addresses_t3_target_t2.id = t1_obj_t2_addresses_t3_target_t1.id", " JOIN agreego.entity t1_obj_t2_addresses_t3_target_t2 ON t1_obj_t2_addresses_t3_target_t2.id = t1_obj_t2_addresses_t3_target_t1.id",
" WHERE", " WHERE",
" NOT t1_obj_t2_addresses_t3_target_t1.archived", " NOT t1_obj_t2_addresses_t3_target_t2.archived",
" AND t1_obj_t2_addresses_t3_target_t1.id = t1_obj_t2_addresses_t3.target_id", " AND t1_obj_t2_addresses_t3_target_t1.id = t1_obj_t2_addresses_t3.target_id",
" ),", " ),",
" 'type', t1_obj_t2_addresses_t3.type", " 'type', t1_obj_t2_addresses_t3.type",
@ -947,7 +947,7 @@
" JOIN agreego.relationship t1_obj_t2_addresses_t2 ON t1_obj_t2_addresses_t2.id = t1_obj_t2_addresses_t1.id", " JOIN agreego.relationship t1_obj_t2_addresses_t2 ON t1_obj_t2_addresses_t2.id = t1_obj_t2_addresses_t1.id",
" JOIN agreego.entity t1_obj_t2_addresses_t3 ON t1_obj_t2_addresses_t3.id = t1_obj_t2_addresses_t2.id", " JOIN agreego.entity t1_obj_t2_addresses_t3 ON t1_obj_t2_addresses_t3.id = t1_obj_t2_addresses_t2.id",
" WHERE", " WHERE",
" NOT t1_obj_t2_addresses_t1.archived", " NOT t1_obj_t2_addresses_t3.archived",
" AND t1_obj_t2_addresses_t1.parent_id = t1_obj_t2.id),", " AND t1_obj_t2_addresses_t1.parent_id = t1_obj_t2.id),",
" 'age', t1_obj_t1.age,", " 'age', t1_obj_t1.age,",
" 'archived', t1_obj_t2.archived,", " 'archived', t1_obj_t2.archived,",
@ -971,7 +971,7 @@
" FROM agreego.phone_number t1_obj_t2_contacts_t3_target_t1", " FROM agreego.phone_number t1_obj_t2_contacts_t3_target_t1",
" JOIN agreego.entity t1_obj_t2_contacts_t3_target_t2 ON t1_obj_t2_contacts_t3_target_t2.id = t1_obj_t2_contacts_t3_target_t1.id", " JOIN agreego.entity t1_obj_t2_contacts_t3_target_t2 ON t1_obj_t2_contacts_t3_target_t2.id = t1_obj_t2_contacts_t3_target_t1.id",
" WHERE", " WHERE",
" NOT t1_obj_t2_contacts_t3_target_t1.archived", " NOT t1_obj_t2_contacts_t3_target_t2.archived",
" AND t1_obj_t2_contacts_t3_target_t1.id = t1_obj_t2_contacts_t3.target_id", " AND t1_obj_t2_contacts_t3_target_t1.id = t1_obj_t2_contacts_t3.target_id",
" ))", " ))",
" WHEN t1_obj_t2_contacts_t3.target_type = 'email_address' THEN", " WHEN t1_obj_t2_contacts_t3.target_type = 'email_address' THEN",
@ -986,7 +986,7 @@
" FROM agreego.email_address t1_obj_t2_contacts_t3_target_t1", " FROM agreego.email_address t1_obj_t2_contacts_t3_target_t1",
" JOIN agreego.entity t1_obj_t2_contacts_t3_target_t2 ON t1_obj_t2_contacts_t3_target_t2.id = t1_obj_t2_contacts_t3_target_t1.id", " JOIN agreego.entity t1_obj_t2_contacts_t3_target_t2 ON t1_obj_t2_contacts_t3_target_t2.id = t1_obj_t2_contacts_t3_target_t1.id",
" WHERE", " WHERE",
" NOT t1_obj_t2_contacts_t3_target_t1.archived", " NOT t1_obj_t2_contacts_t3_target_t2.archived",
" AND t1_obj_t2_contacts_t3_target_t1.id = t1_obj_t2_contacts_t3.target_id", " AND t1_obj_t2_contacts_t3_target_t1.id = t1_obj_t2_contacts_t3.target_id",
" ))", " ))",
" WHEN t1_obj_t2_contacts_t3.target_type = 'address' THEN", " WHEN t1_obj_t2_contacts_t3.target_type = 'address' THEN",
@ -1001,7 +1001,7 @@
" FROM agreego.address t1_obj_t2_contacts_t3_target_t1", " FROM agreego.address t1_obj_t2_contacts_t3_target_t1",
" JOIN agreego.entity t1_obj_t2_contacts_t3_target_t2 ON t1_obj_t2_contacts_t3_target_t2.id = t1_obj_t2_contacts_t3_target_t1.id", " JOIN agreego.entity t1_obj_t2_contacts_t3_target_t2 ON t1_obj_t2_contacts_t3_target_t2.id = t1_obj_t2_contacts_t3_target_t1.id",
" WHERE", " WHERE",
" NOT t1_obj_t2_contacts_t3_target_t1.archived", " NOT t1_obj_t2_contacts_t3_target_t2.archived",
" AND t1_obj_t2_contacts_t3_target_t1.id = t1_obj_t2_contacts_t3.target_id", " AND t1_obj_t2_contacts_t3_target_t1.id = t1_obj_t2_contacts_t3.target_id",
" ))", " ))",
" ELSE NULL", " ELSE NULL",
@ -1012,7 +1012,7 @@
" JOIN agreego.relationship t1_obj_t2_contacts_t2 ON t1_obj_t2_contacts_t2.id = t1_obj_t2_contacts_t1.id", " JOIN agreego.relationship t1_obj_t2_contacts_t2 ON t1_obj_t2_contacts_t2.id = t1_obj_t2_contacts_t1.id",
" JOIN agreego.entity t1_obj_t2_contacts_t3 ON t1_obj_t2_contacts_t3.id = t1_obj_t2_contacts_t2.id", " JOIN agreego.entity t1_obj_t2_contacts_t3 ON t1_obj_t2_contacts_t3.id = t1_obj_t2_contacts_t2.id",
" WHERE", " WHERE",
" NOT t1_obj_t2_contacts_t1.archived", " NOT t1_obj_t2_contacts_t3.archived",
" AND t1_obj_t2_contacts_t1.parent_id = t1_obj_t2.id),", " AND t1_obj_t2_contacts_t1.parent_id = t1_obj_t2.id),",
" 'created_at', t1_obj_t2.created_at,", " 'created_at', t1_obj_t2.created_at,",
" 'email_addresses',", " 'email_addresses',",
@ -1034,7 +1034,7 @@
" FROM agreego.email_address t1_obj_t2_email_addresses_t3_target_t1", " FROM agreego.email_address t1_obj_t2_email_addresses_t3_target_t1",
" JOIN agreego.entity t1_obj_t2_email_addresses_t3_target_t2 ON t1_obj_t2_email_addresses_t3_target_t2.id = t1_obj_t2_email_addresses_t3_target_t1.id", " JOIN agreego.entity t1_obj_t2_email_addresses_t3_target_t2 ON t1_obj_t2_email_addresses_t3_target_t2.id = t1_obj_t2_email_addresses_t3_target_t1.id",
" WHERE", " WHERE",
" NOT t1_obj_t2_email_addresses_t3_target_t1.archived", " NOT t1_obj_t2_email_addresses_t3_target_t2.archived",
" AND t1_obj_t2_email_addresses_t3_target_t1.id = t1_obj_t2_email_addresses_t3.target_id", " AND t1_obj_t2_email_addresses_t3_target_t1.id = t1_obj_t2_email_addresses_t3.target_id",
" ),", " ),",
" 'type', t1_obj_t2_email_addresses_t3.type", " 'type', t1_obj_t2_email_addresses_t3.type",
@ -1043,7 +1043,7 @@
" JOIN agreego.relationship t1_obj_t2_email_addresses_t2 ON t1_obj_t2_email_addresses_t2.id = t1_obj_t2_email_addresses_t1.id", " JOIN agreego.relationship t1_obj_t2_email_addresses_t2 ON t1_obj_t2_email_addresses_t2.id = t1_obj_t2_email_addresses_t1.id",
" JOIN agreego.entity t1_obj_t2_email_addresses_t3 ON t1_obj_t2_email_addresses_t3.id = t1_obj_t2_email_addresses_t2.id", " JOIN agreego.entity t1_obj_t2_email_addresses_t3 ON t1_obj_t2_email_addresses_t3.id = t1_obj_t2_email_addresses_t2.id",
" WHERE", " WHERE",
" NOT t1_obj_t2_email_addresses_t1.archived", " NOT t1_obj_t2_email_addresses_t3.archived",
" AND t1_obj_t2_email_addresses_t1.parent_id = t1_obj_t2.id),", " AND t1_obj_t2_email_addresses_t1.parent_id = t1_obj_t2.id),",
" 'first_name', t1_obj_t1.first_name,", " 'first_name', t1_obj_t1.first_name,",
" 'id', t1_obj_t2.id,", " 'id', t1_obj_t2.id,",
@ -1068,7 +1068,7 @@
" FROM agreego.phone_number t1_obj_t2_phone_numbers_t3_target_t1", " FROM agreego.phone_number t1_obj_t2_phone_numbers_t3_target_t1",
" JOIN agreego.entity t1_obj_t2_phone_numbers_t3_target_t2 ON t1_obj_t2_phone_numbers_t3_target_t2.id = t1_obj_t2_phone_numbers_t3_target_t1.id", " JOIN agreego.entity t1_obj_t2_phone_numbers_t3_target_t2 ON t1_obj_t2_phone_numbers_t3_target_t2.id = t1_obj_t2_phone_numbers_t3_target_t1.id",
" WHERE", " WHERE",
" NOT t1_obj_t2_phone_numbers_t3_target_t1.archived", " NOT t1_obj_t2_phone_numbers_t3_target_t2.archived",
" AND t1_obj_t2_phone_numbers_t3_target_t1.id = t1_obj_t2_phone_numbers_t3.target_id", " AND t1_obj_t2_phone_numbers_t3_target_t1.id = t1_obj_t2_phone_numbers_t3.target_id",
" ),", " ),",
" 'type', t1_obj_t2_phone_numbers_t3.type", " 'type', t1_obj_t2_phone_numbers_t3.type",
@ -1077,13 +1077,13 @@
" JOIN agreego.relationship t1_obj_t2_phone_numbers_t2 ON t1_obj_t2_phone_numbers_t2.id = t1_obj_t2_phone_numbers_t1.id", " JOIN agreego.relationship t1_obj_t2_phone_numbers_t2 ON t1_obj_t2_phone_numbers_t2.id = t1_obj_t2_phone_numbers_t1.id",
" JOIN agreego.entity t1_obj_t2_phone_numbers_t3 ON t1_obj_t2_phone_numbers_t3.id = t1_obj_t2_phone_numbers_t2.id", " JOIN agreego.entity t1_obj_t2_phone_numbers_t3 ON t1_obj_t2_phone_numbers_t3.id = t1_obj_t2_phone_numbers_t2.id",
" WHERE", " WHERE",
" NOT t1_obj_t2_phone_numbers_t1.archived", " NOT t1_obj_t2_phone_numbers_t3.archived",
" AND t1_obj_t2_phone_numbers_t1.parent_id = t1_obj_t2.id),", " AND t1_obj_t2_phone_numbers_t1.parent_id = t1_obj_t2.id),",
" 'type', t1_obj_t2.type", " 'type', t1_obj_t2.type",
")", ")",
"FROM agreego.person t1_obj_t1", "FROM agreego.person t1_obj_t1",
"JOIN agreego.entity t1_obj_t2 ON t1_obj_t2.id = t1_obj_t1.id", "JOIN agreego.entity t1_obj_t2 ON t1_obj_t2.id = t1_obj_t1.id",
"WHERE NOT t1_obj_t1.archived)" "WHERE NOT t1_obj_t2.archived)"
] ]
] ]
} }
@ -1181,7 +1181,7 @@
" FROM agreego.address t1_obj_t2_addresses_t3_target_t1", " FROM agreego.address t1_obj_t2_addresses_t3_target_t1",
" JOIN agreego.entity t1_obj_t2_addresses_t3_target_t2 ON t1_obj_t2_addresses_t3_target_t2.id = t1_obj_t2_addresses_t3_target_t1.id", " JOIN agreego.entity t1_obj_t2_addresses_t3_target_t2 ON t1_obj_t2_addresses_t3_target_t2.id = t1_obj_t2_addresses_t3_target_t1.id",
" WHERE", " WHERE",
" NOT t1_obj_t2_addresses_t3_target_t1.archived", " NOT t1_obj_t2_addresses_t3_target_t2.archived",
" AND t1_obj_t2_addresses_t3_target_t1.id = t1_obj_t2_addresses_t3.target_id", " AND t1_obj_t2_addresses_t3_target_t1.id = t1_obj_t2_addresses_t3.target_id",
" ),", " ),",
" 'type', t1_obj_t2_addresses_t3.type", " 'type', t1_obj_t2_addresses_t3.type",
@ -1190,7 +1190,7 @@
" JOIN agreego.relationship t1_obj_t2_addresses_t2 ON t1_obj_t2_addresses_t2.id = t1_obj_t2_addresses_t1.id", " JOIN agreego.relationship t1_obj_t2_addresses_t2 ON t1_obj_t2_addresses_t2.id = t1_obj_t2_addresses_t1.id",
" JOIN agreego.entity t1_obj_t2_addresses_t3 ON t1_obj_t2_addresses_t3.id = t1_obj_t2_addresses_t2.id", " JOIN agreego.entity t1_obj_t2_addresses_t3 ON t1_obj_t2_addresses_t3.id = t1_obj_t2_addresses_t2.id",
" WHERE", " WHERE",
" NOT t1_obj_t2_addresses_t1.archived", " NOT t1_obj_t2_addresses_t3.archived",
" AND t1_obj_t2_addresses_t1.parent_id = t1_obj_t2.id),", " AND t1_obj_t2_addresses_t1.parent_id = t1_obj_t2.id),",
" 'age', t1_obj_t1.age,", " 'age', t1_obj_t1.age,",
" 'archived', t1_obj_t2.archived,", " 'archived', t1_obj_t2.archived,",
@ -1214,7 +1214,7 @@
" FROM agreego.phone_number t1_obj_t2_contacts_t3_target_t1", " FROM agreego.phone_number t1_obj_t2_contacts_t3_target_t1",
" JOIN agreego.entity t1_obj_t2_contacts_t3_target_t2 ON t1_obj_t2_contacts_t3_target_t2.id = t1_obj_t2_contacts_t3_target_t1.id", " JOIN agreego.entity t1_obj_t2_contacts_t3_target_t2 ON t1_obj_t2_contacts_t3_target_t2.id = t1_obj_t2_contacts_t3_target_t1.id",
" WHERE", " WHERE",
" NOT t1_obj_t2_contacts_t3_target_t1.archived", " NOT t1_obj_t2_contacts_t3_target_t2.archived",
" AND t1_obj_t2_contacts_t3_target_t1.id = t1_obj_t2_contacts_t3.target_id", " AND t1_obj_t2_contacts_t3_target_t1.id = t1_obj_t2_contacts_t3.target_id",
" ))", " ))",
" WHEN t1_obj_t2_contacts_t3.target_type = 'email_address' THEN", " WHEN t1_obj_t2_contacts_t3.target_type = 'email_address' THEN",
@ -1229,7 +1229,7 @@
" FROM agreego.email_address t1_obj_t2_contacts_t3_target_t1", " FROM agreego.email_address t1_obj_t2_contacts_t3_target_t1",
" JOIN agreego.entity t1_obj_t2_contacts_t3_target_t2 ON t1_obj_t2_contacts_t3_target_t2.id = t1_obj_t2_contacts_t3_target_t1.id", " JOIN agreego.entity t1_obj_t2_contacts_t3_target_t2 ON t1_obj_t2_contacts_t3_target_t2.id = t1_obj_t2_contacts_t3_target_t1.id",
" WHERE", " WHERE",
" NOT t1_obj_t2_contacts_t3_target_t1.archived", " NOT t1_obj_t2_contacts_t3_target_t2.archived",
" AND t1_obj_t2_contacts_t3_target_t1.id = t1_obj_t2_contacts_t3.target_id", " AND t1_obj_t2_contacts_t3_target_t1.id = t1_obj_t2_contacts_t3.target_id",
" ))", " ))",
" WHEN t1_obj_t2_contacts_t3.target_type = 'address' THEN", " WHEN t1_obj_t2_contacts_t3.target_type = 'address' THEN",
@ -1244,7 +1244,7 @@
" FROM agreego.address t1_obj_t2_contacts_t3_target_t1", " FROM agreego.address t1_obj_t2_contacts_t3_target_t1",
" JOIN agreego.entity t1_obj_t2_contacts_t3_target_t2 ON t1_obj_t2_contacts_t3_target_t2.id = t1_obj_t2_contacts_t3_target_t1.id", " JOIN agreego.entity t1_obj_t2_contacts_t3_target_t2 ON t1_obj_t2_contacts_t3_target_t2.id = t1_obj_t2_contacts_t3_target_t1.id",
" WHERE", " WHERE",
" NOT t1_obj_t2_contacts_t3_target_t1.archived", " NOT t1_obj_t2_contacts_t3_target_t2.archived",
" AND t1_obj_t2_contacts_t3_target_t1.id = t1_obj_t2_contacts_t3.target_id", " AND t1_obj_t2_contacts_t3_target_t1.id = t1_obj_t2_contacts_t3.target_id",
" ))", " ))",
" ELSE NULL", " ELSE NULL",
@ -1255,7 +1255,7 @@
" JOIN agreego.relationship t1_obj_t2_contacts_t2 ON t1_obj_t2_contacts_t2.id = t1_obj_t2_contacts_t1.id", " JOIN agreego.relationship t1_obj_t2_contacts_t2 ON t1_obj_t2_contacts_t2.id = t1_obj_t2_contacts_t1.id",
" JOIN agreego.entity t1_obj_t2_contacts_t3 ON t1_obj_t2_contacts_t3.id = t1_obj_t2_contacts_t2.id", " JOIN agreego.entity t1_obj_t2_contacts_t3 ON t1_obj_t2_contacts_t3.id = t1_obj_t2_contacts_t2.id",
" WHERE", " WHERE",
" NOT t1_obj_t2_contacts_t1.archived", " NOT t1_obj_t2_contacts_t3.archived",
" AND t1_obj_t2_contacts_t1.is_primary = ($11#>>'{}')::boolean", " AND t1_obj_t2_contacts_t1.is_primary = ($11#>>'{}')::boolean",
" AND t1_obj_t2_contacts_t1.parent_id = t1_obj_t2.id),", " AND t1_obj_t2_contacts_t1.parent_id = t1_obj_t2.id),",
" 'created_at', t1_obj_t2.created_at,", " 'created_at', t1_obj_t2.created_at,",
@ -1278,7 +1278,7 @@
" FROM agreego.email_address t1_obj_t2_email_addresses_t3_target_t1", " FROM agreego.email_address t1_obj_t2_email_addresses_t3_target_t1",
" JOIN agreego.entity t1_obj_t2_email_addresses_t3_target_t2 ON t1_obj_t2_email_addresses_t3_target_t2.id = t1_obj_t2_email_addresses_t3_target_t1.id", " JOIN agreego.entity t1_obj_t2_email_addresses_t3_target_t2 ON t1_obj_t2_email_addresses_t3_target_t2.id = t1_obj_t2_email_addresses_t3_target_t1.id",
" WHERE", " WHERE",
" NOT t1_obj_t2_email_addresses_t3_target_t1.archived", " NOT t1_obj_t2_email_addresses_t3_target_t2.archived",
" AND t1_obj_t2_email_addresses_t3_target_t1.id = t1_obj_t2_email_addresses_t3.target_id", " AND t1_obj_t2_email_addresses_t3_target_t1.id = t1_obj_t2_email_addresses_t3.target_id",
" ),", " ),",
" 'type', t1_obj_t2_email_addresses_t3.type", " 'type', t1_obj_t2_email_addresses_t3.type",
@ -1287,7 +1287,7 @@
" JOIN agreego.relationship t1_obj_t2_email_addresses_t2 ON t1_obj_t2_email_addresses_t2.id = t1_obj_t2_email_addresses_t1.id", " JOIN agreego.relationship t1_obj_t2_email_addresses_t2 ON t1_obj_t2_email_addresses_t2.id = t1_obj_t2_email_addresses_t1.id",
" JOIN agreego.entity t1_obj_t2_email_addresses_t3 ON t1_obj_t2_email_addresses_t3.id = t1_obj_t2_email_addresses_t2.id", " JOIN agreego.entity t1_obj_t2_email_addresses_t3 ON t1_obj_t2_email_addresses_t3.id = t1_obj_t2_email_addresses_t2.id",
" WHERE", " WHERE",
" NOT t1_obj_t2_email_addresses_t1.archived", " NOT t1_obj_t2_email_addresses_t3.archived",
" AND t1_obj_t2_email_addresses_t1.parent_id = t1_obj_t2.id),", " AND t1_obj_t2_email_addresses_t1.parent_id = t1_obj_t2.id),",
" 'first_name', t1_obj_t1.first_name,", " 'first_name', t1_obj_t1.first_name,",
" 'id', t1_obj_t2.id,", " 'id', t1_obj_t2.id,",
@ -1312,7 +1312,7 @@
" FROM agreego.phone_number t1_obj_t2_phone_numbers_t3_target_t1", " FROM agreego.phone_number t1_obj_t2_phone_numbers_t3_target_t1",
" JOIN agreego.entity t1_obj_t2_phone_numbers_t3_target_t2 ON t1_obj_t2_phone_numbers_t3_target_t2.id = t1_obj_t2_phone_numbers_t3_target_t1.id", " JOIN agreego.entity t1_obj_t2_phone_numbers_t3_target_t2 ON t1_obj_t2_phone_numbers_t3_target_t2.id = t1_obj_t2_phone_numbers_t3_target_t1.id",
" WHERE", " WHERE",
" NOT t1_obj_t2_phone_numbers_t3_target_t1.archived", " NOT t1_obj_t2_phone_numbers_t3_target_t2.archived",
" AND t1_obj_t2_phone_numbers_t3_target_t1.number ILIKE $32#>>'{}'", " AND t1_obj_t2_phone_numbers_t3_target_t1.number ILIKE $32#>>'{}'",
" AND t1_obj_t2_phone_numbers_t3_target_t1.id = t1_obj_t2_phone_numbers_t3.target_id", " AND t1_obj_t2_phone_numbers_t3_target_t1.id = t1_obj_t2_phone_numbers_t3.target_id",
" ),", " ),",
@ -1322,14 +1322,14 @@
" JOIN agreego.relationship t1_obj_t2_phone_numbers_t2 ON t1_obj_t2_phone_numbers_t2.id = t1_obj_t2_phone_numbers_t1.id", " JOIN agreego.relationship t1_obj_t2_phone_numbers_t2 ON t1_obj_t2_phone_numbers_t2.id = t1_obj_t2_phone_numbers_t1.id",
" JOIN agreego.entity t1_obj_t2_phone_numbers_t3 ON t1_obj_t2_phone_numbers_t3.id = t1_obj_t2_phone_numbers_t2.id", " JOIN agreego.entity t1_obj_t2_phone_numbers_t3 ON t1_obj_t2_phone_numbers_t3.id = t1_obj_t2_phone_numbers_t2.id",
" WHERE", " WHERE",
" NOT t1_obj_t2_phone_numbers_t1.archived", " NOT t1_obj_t2_phone_numbers_t3.archived",
" AND t1_obj_t2_phone_numbers_t1.parent_id = t1_obj_t2.id),", " AND t1_obj_t2_phone_numbers_t1.parent_id = t1_obj_t2.id),",
" 'type', t1_obj_t2.type", " 'type', t1_obj_t2.type",
")", ")",
"FROM agreego.person t1_obj_t1", "FROM agreego.person t1_obj_t1",
"JOIN agreego.entity t1_obj_t2 ON t1_obj_t2.id = t1_obj_t1.id", "JOIN agreego.entity t1_obj_t2 ON t1_obj_t2.id = t1_obj_t1.id",
"WHERE", "WHERE",
" NOT t1_obj_t1.archived", " NOT t1_obj_t2.archived",
" AND t1_obj_t1.age = ($1#>>'{}')::numeric", " AND t1_obj_t1.age = ($1#>>'{}')::numeric",
" AND t1_obj_t1.age > ($2#>>'{}')::numeric", " AND t1_obj_t1.age > ($2#>>'{}')::numeric",
" AND t1_obj_t1.age >= ($3#>>'{}')::numeric", " AND t1_obj_t1.age >= ($3#>>'{}')::numeric",
@ -1392,14 +1392,14 @@
" FROM agreego.phone_number t1_obj_t3_target_t1", " FROM agreego.phone_number t1_obj_t3_target_t1",
" JOIN agreego.entity t1_obj_t3_target_t2 ON t1_obj_t3_target_t2.id = t1_obj_t3_target_t1.id", " JOIN agreego.entity t1_obj_t3_target_t2 ON t1_obj_t3_target_t2.id = t1_obj_t3_target_t1.id",
" WHERE", " WHERE",
" NOT t1_obj_t3_target_t1.archived", " NOT t1_obj_t3_target_t2.archived",
" AND t1_obj_t3_target_t1.id = t1_obj_t3.target_id),", " AND t1_obj_t3_target_t1.id = t1_obj_t3.target_id),",
" 'type', t1_obj_t3.type", " 'type', t1_obj_t3.type",
")", ")",
"FROM agreego.contact t1_obj_t1", "FROM agreego.contact t1_obj_t1",
"JOIN agreego.relationship t1_obj_t2 ON t1_obj_t2.id = t1_obj_t1.id", "JOIN agreego.relationship t1_obj_t2 ON t1_obj_t2.id = t1_obj_t1.id",
"JOIN agreego.entity t1_obj_t3 ON t1_obj_t3.id = t1_obj_t2.id", "JOIN agreego.entity t1_obj_t3 ON t1_obj_t3.id = t1_obj_t2.id",
"WHERE NOT t1_obj_t1.archived)" "WHERE NOT t1_obj_t3.archived)"
] ]
] ]
} }
@ -1422,7 +1422,7 @@
" 'type', t1_obj_t2.type)", " 'type', t1_obj_t2.type)",
"FROM agreego.phone_number t1_obj_t1", "FROM agreego.phone_number t1_obj_t1",
"JOIN agreego.entity t1_obj_t2 ON t1_obj_t2.id = t1_obj_t1.id", "JOIN agreego.entity t1_obj_t2 ON t1_obj_t2.id = t1_obj_t1.id",
"WHERE NOT t1_obj_t1.archived)" "WHERE NOT t1_obj_t2.archived)"
] ]
] ]
} }
@ -1445,7 +1445,7 @@
" 'type', t1_obj_t2.type)", " 'type', t1_obj_t2.type)",
"FROM agreego.email_address t1_obj_t1", "FROM agreego.email_address t1_obj_t1",
"JOIN agreego.entity t1_obj_t2 ON t1_obj_t2.id = t1_obj_t1.id", "JOIN agreego.entity t1_obj_t2 ON t1_obj_t2.id = t1_obj_t1.id",
"WHERE NOT t1_obj_t1.archived)" "WHERE NOT t1_obj_t2.archived)"
] ]
] ]
} }
@ -1475,7 +1475,7 @@
" FROM agreego.person t1_obj_t2_customer_t1", " FROM agreego.person t1_obj_t2_customer_t1",
" JOIN agreego.entity t1_obj_t2_customer_t2 ON t1_obj_t2_customer_t2.id = t1_obj_t2_customer_t1.id", " JOIN agreego.entity t1_obj_t2_customer_t2 ON t1_obj_t2_customer_t2.id = t1_obj_t2_customer_t1.id",
" WHERE", " WHERE",
" NOT t1_obj_t2_customer_t1.archived", " NOT t1_obj_t2_customer_t2.archived",
" AND t1_obj_t2_customer_t1.parent_id = t1_obj_t2.id),", " AND t1_obj_t2_customer_t1.parent_id = t1_obj_t2.id),",
" 'customer_id', t1_obj_t1.customer_id,", " 'customer_id', t1_obj_t1.customer_id,",
" 'id', t1_obj_t2.id,", " 'id', t1_obj_t2.id,",
@ -1493,7 +1493,7 @@
" FROM agreego.order_line t1_obj_t2_lines_t1", " FROM agreego.order_line t1_obj_t2_lines_t1",
" JOIN agreego.entity t1_obj_t2_lines_t2 ON t1_obj_t2_lines_t2.id = t1_obj_t2_lines_t1.id", " JOIN agreego.entity t1_obj_t2_lines_t2 ON t1_obj_t2_lines_t2.id = t1_obj_t2_lines_t1.id",
" WHERE", " WHERE",
" NOT t1_obj_t2_lines_t1.archived", " NOT t1_obj_t2_lines_t2.archived",
" AND t1_obj_t2_lines_t1.parent_id = t1_obj_t2.id),", " AND t1_obj_t2_lines_t1.parent_id = t1_obj_t2.id),",
" 'name', t1_obj_t2.name,", " 'name', t1_obj_t2.name,",
" 'total', t1_obj_t1.total,", " 'total', t1_obj_t1.total,",
@ -1501,7 +1501,7 @@
")", ")",
"FROM agreego.order t1_obj_t1", "FROM agreego.order t1_obj_t1",
"JOIN agreego.entity t1_obj_t2 ON t1_obj_t2.id = t1_obj_t1.id", "JOIN agreego.entity t1_obj_t2 ON t1_obj_t2.id = t1_obj_t1.id",
"WHERE NOT t1_obj_t1.archived)" "WHERE NOT t1_obj_t2.archived)"
] ]
] ]
} }
@ -1525,7 +1525,7 @@
" 'type', t1_obj_t1_obj_t2.type)", " 'type', t1_obj_t1_obj_t2.type)",
" FROM agreego.address t1_obj_t1_obj_t1", " FROM agreego.address t1_obj_t1_obj_t1",
" JOIN agreego.entity t1_obj_t1_obj_t2 ON t1_obj_t1_obj_t2.id = t1_obj_t1_obj_t1.id", " JOIN agreego.entity t1_obj_t1_obj_t2 ON t1_obj_t1_obj_t2.id = t1_obj_t1_obj_t1.id",
" WHERE NOT t1_obj_t1_obj_t1.archived))", " WHERE NOT t1_obj_t1_obj_t2.archived))",
" WHEN t1_obj_t1.type = 'contact' THEN ((SELECT jsonb_build_object(", " WHEN t1_obj_t1.type = 'contact' THEN ((SELECT jsonb_build_object(",
" 'archived', t1_obj_t1_obj_t3.archived,", " 'archived', t1_obj_t1_obj_t3.archived,",
" 'created_at', t1_obj_t1_obj_t3.created_at,", " 'created_at', t1_obj_t1_obj_t3.created_at,",
@ -1536,7 +1536,7 @@
" FROM agreego.contact t1_obj_t1_obj_t1", " FROM agreego.contact t1_obj_t1_obj_t1",
" JOIN agreego.relationship t1_obj_t1_obj_t2 ON t1_obj_t1_obj_t2.id = t1_obj_t1_obj_t1.id", " JOIN agreego.relationship t1_obj_t1_obj_t2 ON t1_obj_t1_obj_t2.id = t1_obj_t1_obj_t1.id",
" JOIN agreego.entity t1_obj_t1_obj_t3 ON t1_obj_t1_obj_t3.id = t1_obj_t1_obj_t2.id", " JOIN agreego.entity t1_obj_t1_obj_t3 ON t1_obj_t1_obj_t3.id = t1_obj_t1_obj_t2.id",
" WHERE NOT t1_obj_t1_obj_t1.archived))", " WHERE NOT t1_obj_t1_obj_t3.archived))",
" WHEN t1_obj_t1.type = 'email_address' THEN ((SELECT jsonb_build_object(", " WHEN t1_obj_t1.type = 'email_address' THEN ((SELECT jsonb_build_object(",
" 'address', t1_obj_t1_obj_t1.address,", " 'address', t1_obj_t1_obj_t1.address,",
" 'archived', t1_obj_t1_obj_t2.archived,", " 'archived', t1_obj_t1_obj_t2.archived,",
@ -1546,7 +1546,7 @@
" 'type', t1_obj_t1_obj_t2.type)", " 'type', t1_obj_t1_obj_t2.type)",
" FROM agreego.email_address t1_obj_t1_obj_t1", " FROM agreego.email_address t1_obj_t1_obj_t1",
" JOIN agreego.entity t1_obj_t1_obj_t2 ON t1_obj_t1_obj_t2.id = t1_obj_t1_obj_t1.id", " JOIN agreego.entity t1_obj_t1_obj_t2 ON t1_obj_t1_obj_t2.id = t1_obj_t1_obj_t1.id",
" WHERE NOT t1_obj_t1_obj_t1.archived))", " WHERE NOT t1_obj_t1_obj_t2.archived))",
" WHEN t1_obj_t1.type = 'entity' THEN ((SELECT jsonb_build_object(", " WHEN t1_obj_t1.type = 'entity' THEN ((SELECT jsonb_build_object(",
" 'archived', t1_obj_t1_obj_t1.archived,", " 'archived', t1_obj_t1_obj_t1.archived,",
" 'created_at', t1_obj_t1_obj_t1.created_at,", " 'created_at', t1_obj_t1_obj_t1.created_at,",
@ -1565,7 +1565,7 @@
" 'type', t1_obj_t1_obj_t2.type)", " 'type', t1_obj_t1_obj_t2.type)",
" FROM agreego.order t1_obj_t1_obj_t1", " FROM agreego.order t1_obj_t1_obj_t1",
" JOIN agreego.entity t1_obj_t1_obj_t2 ON t1_obj_t1_obj_t2.id = t1_obj_t1_obj_t1.id", " JOIN agreego.entity t1_obj_t1_obj_t2 ON t1_obj_t1_obj_t2.id = t1_obj_t1_obj_t1.id",
" WHERE NOT t1_obj_t1_obj_t1.archived))", " WHERE NOT t1_obj_t1_obj_t2.archived))",
" WHEN t1_obj_t1.type = 'order_line' THEN ((SELECT jsonb_build_object(", " WHEN t1_obj_t1.type = 'order_line' THEN ((SELECT jsonb_build_object(",
" 'archived', t1_obj_t1_obj_t2.archived,", " 'archived', t1_obj_t1_obj_t2.archived,",
" 'created_at', t1_obj_t1_obj_t2.created_at,", " 'created_at', t1_obj_t1_obj_t2.created_at,",
@ -1577,7 +1577,7 @@
" 'type', t1_obj_t1_obj_t2.type)", " 'type', t1_obj_t1_obj_t2.type)",
" FROM agreego.order_line t1_obj_t1_obj_t1", " FROM agreego.order_line t1_obj_t1_obj_t1",
" JOIN agreego.entity t1_obj_t1_obj_t2 ON t1_obj_t1_obj_t2.id = t1_obj_t1_obj_t1.id", " JOIN agreego.entity t1_obj_t1_obj_t2 ON t1_obj_t1_obj_t2.id = t1_obj_t1_obj_t1.id",
" WHERE NOT t1_obj_t1_obj_t1.archived))", " WHERE NOT t1_obj_t1_obj_t2.archived))",
" WHEN t1_obj_t1.type = 'organization' THEN ((SELECT jsonb_build_object(", " WHEN t1_obj_t1.type = 'organization' THEN ((SELECT jsonb_build_object(",
" 'archived', t1_obj_t1_obj_t2.archived,", " 'archived', t1_obj_t1_obj_t2.archived,",
" 'created_at', t1_obj_t1_obj_t2.created_at,", " 'created_at', t1_obj_t1_obj_t2.created_at,",
@ -1586,7 +1586,7 @@
" 'type', t1_obj_t1_obj_t2.type)", " 'type', t1_obj_t1_obj_t2.type)",
" FROM agreego.organization t1_obj_t1_obj_t1", " FROM agreego.organization t1_obj_t1_obj_t1",
" JOIN agreego.entity t1_obj_t1_obj_t2 ON t1_obj_t1_obj_t2.id = t1_obj_t1_obj_t1.id", " JOIN agreego.entity t1_obj_t1_obj_t2 ON t1_obj_t1_obj_t2.id = t1_obj_t1_obj_t1.id",
" WHERE NOT t1_obj_t1_obj_t1.archived))", " WHERE NOT t1_obj_t1_obj_t2.archived))",
" WHEN t1_obj_t1.type = 'person' THEN ((SELECT jsonb_build_object(", " WHEN t1_obj_t1.type = 'person' THEN ((SELECT jsonb_build_object(",
" 'age', t1_obj_t1_obj_t1.age,", " 'age', t1_obj_t1_obj_t1.age,",
" 'archived', t1_obj_t1_obj_t2.archived,", " 'archived', t1_obj_t1_obj_t2.archived,",
@ -1598,7 +1598,7 @@
" 'type', t1_obj_t1_obj_t2.type)", " 'type', t1_obj_t1_obj_t2.type)",
" FROM agreego.person t1_obj_t1_obj_t1", " FROM agreego.person t1_obj_t1_obj_t1",
" JOIN agreego.entity t1_obj_t1_obj_t2 ON t1_obj_t1_obj_t2.id = t1_obj_t1_obj_t1.id", " JOIN agreego.entity t1_obj_t1_obj_t2 ON t1_obj_t1_obj_t2.id = t1_obj_t1_obj_t1.id",
" WHERE NOT t1_obj_t1_obj_t1.archived))", " WHERE NOT t1_obj_t1_obj_t2.archived))",
" WHEN t1_obj_t1.type = 'phone_number' THEN ((SELECT jsonb_build_object(", " WHEN t1_obj_t1.type = 'phone_number' THEN ((SELECT jsonb_build_object(",
" 'archived', t1_obj_t1_obj_t2.archived,", " 'archived', t1_obj_t1_obj_t2.archived,",
" 'created_at', t1_obj_t1_obj_t2.created_at,", " 'created_at', t1_obj_t1_obj_t2.created_at,",
@ -1608,7 +1608,7 @@
" 'type', t1_obj_t1_obj_t2.type)", " 'type', t1_obj_t1_obj_t2.type)",
" FROM agreego.phone_number t1_obj_t1_obj_t1", " FROM agreego.phone_number t1_obj_t1_obj_t1",
" JOIN agreego.entity t1_obj_t1_obj_t2 ON t1_obj_t1_obj_t2.id = t1_obj_t1_obj_t1.id", " JOIN agreego.entity t1_obj_t1_obj_t2 ON t1_obj_t1_obj_t2.id = t1_obj_t1_obj_t1.id",
" WHERE NOT t1_obj_t1_obj_t1.archived))", " WHERE NOT t1_obj_t1_obj_t2.archived))",
" WHEN t1_obj_t1.type = 'relationship' THEN ((SELECT jsonb_build_object(", " WHEN t1_obj_t1.type = 'relationship' THEN ((SELECT jsonb_build_object(",
" 'archived', t1_obj_t1_obj_t2.archived,", " 'archived', t1_obj_t1_obj_t2.archived,",
" 'created_at', t1_obj_t1_obj_t2.created_at,", " 'created_at', t1_obj_t1_obj_t2.created_at,",
@ -1617,7 +1617,7 @@
" 'type', t1_obj_t1_obj_t2.type)", " 'type', t1_obj_t1_obj_t2.type)",
" FROM agreego.relationship t1_obj_t1_obj_t1", " FROM agreego.relationship t1_obj_t1_obj_t1",
" JOIN agreego.entity t1_obj_t1_obj_t2 ON t1_obj_t1_obj_t2.id = t1_obj_t1_obj_t1.id", " JOIN agreego.entity t1_obj_t1_obj_t2 ON t1_obj_t1_obj_t2.id = t1_obj_t1_obj_t1.id",
" WHERE NOT t1_obj_t1_obj_t1.archived))", " WHERE NOT t1_obj_t1_obj_t2.archived))",
" ELSE NULL END)", " ELSE NULL END)",
"FROM agreego.entity t1_obj_t1", "FROM agreego.entity t1_obj_t1",
"WHERE NOT t1_obj_t1.archived)" "WHERE NOT t1_obj_t1.archived)"

View File

@ -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);
}
}
}

View File

@ -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(':');

View File

@ -1 +1 @@
1.0.69 1.0.70