Skip to content

jsonb sintax is broken #23

@sezaru

Description

@sezaru

Using SQL breaks jsonb syntax like -> or ->>.

Here is an example:

defmodule Bla do
  use SQL, adapter: SQL.Adapters.Postgres

  def migrate_from_query do
    sql = ~SQL"""
    update
      payments.products
    set
      export_credits = (metadata -> 'value' ->> 'export')::bigint,
      skip_trace_credits = (metadata -> 'value' ->> 'skip_trace')::bigint
    """

    {query, []} = to_sql(sql)

    query
  end
end

This will generated the following query:

update payments.products set export_credits = (metadata - > 'value' - > > 'export') :: bigint, skip_trace_credits = (metadata - > 'value' - > > 'skip_trace') :: bigint

As you can see, it changed -> to - > and ->> to - > >.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions