databendlabs/jsonb

Tracking: Support the full JSON Path language

Open

#12 opened on Apr 20, 2023

View on GitHub
 (0 comments) (0 reactions) (0 assignees)Rust (17 forks)github user discovery
good first issuehelp wanted

Repository metrics

Stars
 (86 stars)
PR merge metrics
 (Avg merge 7d 6h) (1 merged PR in 30d)

Description

JSON path has already implemented the basic elements accessors and comparison predicates filter expression, in order to support the full JSON Path language, the following tasks need to be done further.

  • Variables:
    • Variables
  • Modes:
    • lax
    • strict
  • Item methods:
    • type()
    • size()
    • double()
    • ceiling()
    • floor()
    • abs()
    • datetime()
    • keyvalue()
  • Arithmetic expressions
    • Unary + or -
    • Binary +, -, *, /, %
  • Filter expression
    • exists path predicate
    • like_regex predicate
    • starts with predicate
    • is unknown predicate

The syntax and functionality of JSON Path should be implemented in accordance with the SQL:2016 (ISO/IEC 9075:2016) standard. Here are some references:

Contributor guide