262 {
263 auto json_query = var_.size() > 0 && var_[0] == '$';
264 auto is_value_null = index_ == -1;
265
266
267 if (is_value_null) {
268 if (json_query)
269 return std::format("json_type(body, '{0}') IS NOT NULL AND json_extract(body, '{0}') {1} NULL", var_, op_);
270 else
271 return std::format("[{}] {} NULL", var_, op_);
272 }
273
274 if (json_query)
275 return std::format("(json_extract(body, '{}') {} ?{})", var_, op_, index_);
276 else
277 return std::format("([{}] {} ?{})", var_, op_, index_);
278 }