Skip to content

Commit

Permalink
JSONArrayExpression support sqlite and postgres (#252)
Browse files Browse the repository at this point in the history
  • Loading branch information
dushixiang authored Jun 12, 2024
1 parent 4f5cbfd commit 4fe602c
Showing 1 changed file with 8 additions and 0 deletions.
8 changes: 8 additions & 0 deletions json.go
Original file line number Diff line number Diff line change
Expand Up @@ -467,6 +467,14 @@ func (json *JSONArrayExpression) Build(builder clause.Builder) {
builder.WriteString("JSON_CONTAINS (" + stmt.Quote(json.column) + ", JSON_ARRAY(")
builder.AddVar(stmt, json.equalsValue)
builder.WriteString("))")
case "sqlite":
builder.WriteString("exists(SELECT 1 FROM json_each(" + stmt.Quote(json.column) + ") WHERE value = ")
builder.AddVar(stmt, json.equalsValue)
builder.WriteString(")")
case "postgres":
builder.WriteString(stmt.Quote(json.column))
builder.WriteString(" ? ")
builder.AddVar(stmt, json.equalsValue)
}
}
}

0 comments on commit 4fe602c

Please sign in to comment.