Skip to content

JSONB field name incorrectly handled by sql() #1126

@JakobJingleheimer

Description

@JakobJingleheimer

Take a simple query like

sql`
SELECT * FROM "Example"
  WHERE
    somejsonb->>'someField' = foo;
`

When built dynamically:

// fieldName → somejsonb->>'someField'
// val → 'foo'

sql`
SELECT * FROM "Example"
  WHERE
    ${sql(fieldName)} = ${val};
`

fieldName is incorrectly quoted as "somejsonb->>'someField'" (it should be "somejsonb"->>'someField')

Manually wrapping somejsonb in double-quotes results in an extra set of quotes: ""somejsonb"->>'someField'"

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions