Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Postgres support (special functions syntax) #97

Open
55 tasks
Tracked by #40
nene opened this issue Nov 22, 2024 · 0 comments
Open
55 tasks
Tracked by #40

Postgres support (special functions syntax) #97

nene opened this issue Nov 22, 2024 · 0 comments

Comments

@nene
Copy link
Owner

nene commented Nov 22, 2024

JSON functions

  • JSON_OBJECT(...) Support JSON_OBJECT() in PostgreSQL #84
    • json_object('code' VALUE 'P123')
    • json_object('title': 'Jaws')
    • [ FORMAT JSON [ ENCODING UTF8 ] ]
    • [ { NULL | ABSENT } ON NULL ]
    • [ { WITH | WITHOUT } UNIQUE [ KEYS ] ]
    • [ RETURNING data_type [ FORMAT JSON [ ENCODING UTF8 ] ] ]
  • json( expression [ FORMAT JSON [ ENCODING UTF8 ]] [ { WITH | WITHOUT } UNIQUE [ KEYS ]] )
  • json_serialize ( expression [ FORMAT JSON [ ENCODING UTF8 ] ] [ RETURNING data_type [ FORMAT JSON [ ENCODING UTF8 ] ] ] )
  • json_array ( [ { value_expression [ FORMAT JSON ] } [, ...] ] [ { NULL | ABSENT } ON NULL ] [ RETURNING data_type [ FORMAT JSON [ ENCODING UTF8 ] ] ])
  • json_array ( [ query_expression ] [ RETURNING data_type [ FORMAT JSON [ ENCODING UTF8 ] ] ])
  • expression IS [ NOT ] JSON [ { VALUE | SCALAR | ARRAY | OBJECT } ] [ { WITH | WITHOUT } UNIQUE [ KEYS ] ]
  • JSON_EXISTS (...)
    • context_item, path_expression
    • [ PASSING { value AS varname } [, ...]]
    • [{ TRUE | FALSE | UNKNOWN | ERROR } ON ERROR ]
  • JSON_QUERY (...)
    • context_item, path_expression
    • [ PASSING { value AS varname } [, ...]]
    • [ RETURNING data_type [ FORMAT JSON [ ENCODING UTF8 ] ] ]
    • [ { WITHOUT | WITH { CONDITIONAL | [UNCONDITIONAL] } } [ ARRAY ] WRAPPER ]
    • [ { KEEP | OMIT } QUOTES [ ON SCALAR STRING ] ]
    • [ { ERROR | NULL | EMPTY { [ ARRAY ] | OBJECT } | DEFAULT expression } ON EMPTY ]
    • [ { ERROR | NULL | EMPTY { [ ARRAY ] | OBJECT } | DEFAULT expression } ON ERROR ]
  • JSON_VALUE (...)
    • context_item, path_expression
    • [ PASSING { value AS varname } [, ...]]
    • [ RETURNING data_type ]
    • [ { ERROR | NULL | DEFAULT expression } ON EMPTY ]
    • [ { ERROR | NULL | DEFAULT expression } ON ERROR ]
  • JSON_TABLE (...)
    • context_item, path_expression [ AS json_path_name ] [ PASSING { value AS varname } [, ...] ]
    • COLUMNS ( json_table_column [, ...] ), where json_table_column is:
      • name FOR ORDINALITY
      • name type:
        • FORMAT JSON [ENCODING UTF8]
        • PATH path_expression
        • { WITHOUT | WITH { CONDITIONAL | [UNCONDITIONAL] } } [ ARRAY ] WRAPPER
        • { KEEP | OMIT } QUOTES [ ON SCALAR STRING ]
        • { ERROR | NULL | EMPTY { [ARRAY] | OBJECT } | DEFAULT expression } ON EMPTY
        • { ERROR | NULL | EMPTY { [ARRAY] | OBJECT } | DEFAULT expression } ON ERROR
      • name type EXISTS [ PATH path_expression ] [ { ERROR | TRUE | FALSE | UNKNOWN } ON ERROR ]
      • NESTED [ PATH ] path_expression [ AS json_path_name ] COLUMNS ( json_table_column [, ...] )
    • [ { ERROR | EMPTY [ARRAY]} ON ERROR ]

XML functions

  • xmlforest ( content [ AS name ] [, ...] )
  • xmlpi ( NAME name [, content ] )
  • xmlroot ( xml, VERSION {text|NO VALUE} [, STANDALONE {YES|NO|NO VALUE} ] )
  • xml IS DOCUMENT
  • xml IS NOT DOCUMENT
  • XMLEXISTS ( text PASSING [BY {REF|VALUE}] xml [BY {REF|VALUE}] )
  • XMLTABLE (...)
    • [ XMLNAMESPACES ( namespace_uri AS namespace_name [, ...] ), ]
    • row_expression PASSING [BY {REF|VALUE}] document_expression [BY {REF|VALUE}]
    • COLUMNS name { type [PATH column_expression] [DEFAULT default_expression] [NOT NULL | NULL] | FOR ORDINALITY }
    • [, ...]
@nene nene mentioned this issue Nov 22, 2024
19 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant