fix: re-implement trim
Previous implementation treated TRIM as an SQL built-in function, but in reality it is a special expression in SQL. The main difference is that "TRIM" is not a name but a reserved keyword, so it can't be wrapped into double quotes. Moreover, if we treat it as a function, we need some special hacks to handle a complicated logic in its arguments. Now TRIM is a separated expression with a custom parsing logic.
parent
1b132f1b
No related branches found
No related tags found
Showing
- sbroad-cartridge/test_app/test/integration/trim_test.lua 78 additions, 0 deletionssbroad-cartridge/test_app/test/integration/trim_test.lua
- sbroad-core/src/backend/sql/ir.rs 2 additions, 0 deletionssbroad-core/src/backend/sql/ir.rs
- sbroad-core/src/backend/sql/tree.rs 50 additions, 32 deletionssbroad-core/src/backend/sql/tree.rs
- sbroad-core/src/executor/ir.rs 26 additions, 0 deletionssbroad-core/src/executor/ir.rs
- sbroad-core/src/frontend/sql.rs 60 additions, 55 deletionssbroad-core/src/frontend/sql.rs
- sbroad-core/src/frontend/sql/ir.rs 24 additions, 0 deletionssbroad-core/src/frontend/sql/ir.rs
- sbroad-core/src/frontend/sql/ir/tests/trim.rs 3 additions, 3 deletionssbroad-core/src/frontend/sql/ir/tests/trim.rs
- sbroad-core/src/frontend/sql/query.pest 13 additions, 9 deletionssbroad-core/src/frontend/sql/query.pest
- sbroad-core/src/ir.rs 14 additions, 0 deletionssbroad-core/src/ir.rs
- sbroad-core/src/ir/api/parameter.rs 34 additions, 0 deletionssbroad-core/src/ir/api/parameter.rs
- sbroad-core/src/ir/explain.rs 17 additions, 14 deletionssbroad-core/src/ir/explain.rs
- sbroad-core/src/ir/expression.rs 47 additions, 2 deletionssbroad-core/src/ir/expression.rs
- sbroad-core/src/ir/expression/types.rs 1 addition, 1 deletionsbroad-core/src/ir/expression/types.rs
- sbroad-core/src/ir/helpers.rs 1 addition, 0 deletionssbroad-core/src/ir/helpers.rs
- sbroad-core/src/ir/transformation.rs 12 additions, 0 deletionssbroad-core/src/ir/transformation.rs
- sbroad-core/src/ir/transformation/redistribution/eq_cols.rs 11 additions, 0 deletionssbroad-core/src/ir/transformation/redistribution/eq_cols.rs
- sbroad-core/src/ir/transformation/redistribution/groupby.rs 27 additions, 0 deletionssbroad-core/src/ir/transformation/redistribution/groupby.rs
- sbroad-core/src/ir/tree/expression.rs 23 additions, 0 deletionssbroad-core/src/ir/tree/expression.rs
- sbroad-core/src/ir/tree/subtree.rs 22 additions, 0 deletionssbroad-core/src/ir/tree/subtree.rs
Loading
Please register or sign in to comment