It really depends.
Using the relational operators to query deeply nested json objects is pretty painful (multiple layers of unnest's ) but fairly simple in jq.
On the other hand, joining a couple of "flat" json files will be simple in DuckDB but not readily supported in jq.
And if you already know sql thats a win ofc. i.e. I know how to group and aggregate using DuckDB since I know SQL, but currently have no idea about how to do that in jq. And once I find a solution in jq, that is not knowledge I can transfer to other tools.
jq's syntax is deliberately terse which works really really well for "one-liners", while sql queries tend to be more verbose.
jq's syntax is deliberately terse which works really really well for "one-liners", while sql queries tend to be more verbose.