seems like you need a SQL expression parser. I guess in the Java world we don't have a need yet. Engines (Spark, Flink etc.) have their own SQL parsers. They may leverage Calcite for that.
On Thu, Jul 25, 2024 at 2:16 PM Pucheng Yang <pucheng.yo...@gmail.com> wrote: > The motivation is that users usually need to define what partitions/ files > to select in some DSL, where the filter is expressed as a form of the > string, but the underlying engine is Java based. > > On Thu, Jul 25, 2024 at 2:07 PM Pucheng Yang <pucheng.yo...@gmail.com> > wrote: > >> Hi Steve, >> >> Thanks for sharing, unfortunately, this is not what I am looking for. I >> am looking for something like String of "dt = '2024-07-25' AND hr = '10'" >> to an expression of Expressions.and(Expressions.equal("dt", "2024-07-25"), >> Expressions.equal("hr", "10"). Similar to parser.parse() in iceberg-python >> repo >> https://github.com/apache/iceberg-python/blob/dd8d76d04f2d1c6c8192b83df9e84cee05ad5545/pyiceberg/expressions/parser.py#L268 >> >> Thanks >> Pucheng >> >> >> >> On Thu, Jul 25, 2024 at 1:26 PM Steve Zhang >> <hongyue_zh...@apple.com.invalid> wrote: >> >>> Hey Pucheng, >>> >>> can you share a bit more on the motivation? Last time I checked >>> there’s method in ExpressionParser allow you to convert json of string type >>> to iceberg expression in here, not sure if this is what you need: >>> https://github.com/apache/iceberg/blob/caf03aed926665014c22cc4a68902bf684f258f9/core/src/main/java/org/apache/iceberg/expressions/ExpressionParser.java#L262-L264 >>> >>> >>> Thanks, >>> Steve Zhang >>> >>> >>> >>> On Jul 25, 2024, at 11:54 AM, Pucheng Yang <pucheng.yo...@gmail.com> >>> wrote: >>> >>> Hi dev community, >>> >>> If I read the codebase correctly, there seems to be no utility for >>> converting String to an Expression, anyone be interested if we have one? >>> >>> I can help if the community thinks this is a good addition, I will need >>> some guidance on how to get this started though. >>> >>> Thanks >>> >>> >>>