3 ms·
stuff like this SELECT jdoc->'guid', jdoc->'name' FROM api WHERE jdoc @> '{"tags": ["qui"]}'; or SELECT jdoc->'guid', jdoc->'name' FROM api WHERE jdoc @? '$.
by nonethewiser 2y ago
stuff like this
SELECT jdoc->'guid', jdoc->'name' FROM api WHERE jdoc @> '{"tags": ["qui"]}';
or
SELECT jdoc->'guid', jdoc->'name' FROM api WHERE jdoc @? '$.tags[*] ? (@ == "qui")';
which find documents in which the key "tags" contains array element "qui"
https://www.postgresql.org/docs/current/datatype-json.html https://www.postgresql.org/docs/current/datatype-json.html
- Tostino 2y agoI had to ask Claude because I've never worked with Mongo, but apparently the equivalent query for MongoDB is: db.api.find( { "tags": "qui" }, { "guid": 1, "name": 1, "_id": 0 } )
- nonethewiser 2y agoIt's fair to compare alternatives but to be clear I'm not saying postgres JSONB is worse than mongo. I'm not very familiar with mongo either. Im saying it can be tedious is absolute terms. I did not assume this to be universal to document dbs but perhaps it could be. Although your example does seem simpler.