sqlintermediate
Query JSON Columns in SQL
Extract and filter data stored in JSON columns using SQL JSON functions.
sqlPress ⌘/Ctrl + Shift + C to copy
-- PostgreSQL: JSONB operators
SELECT
id,
data->>'name' AS name,
data->'address'->>'city' AS city,
(data->>'age')::int AS age
FROM users
WHERE data->>'status' = 'active'
AND data @> '{"role": "admin"}';
-- Filter by nested JSON array
SELECT id, data->>'name'
FROM users
WHERE data->'tags' ? 'premium';
-- MySQL: JSON functions
SELECT
id,
JSON_EXTRACT(data, '$.name') AS name,
JSON_EXTRACT(data, '$.address.city') AS city
FROM users
WHERE JSON_EXTRACT(data, '$.status') = 'active';Use Cases
- Querying semi-structured data
- API response storage
- Flexible schemas
Tags
Related Snippets
Similar patterns you can reuse in the same workflow.
sqlintermediate
JSON Aggregation and Querying
Aggregate related rows into JSON arrays and query JSONB columns with PostgreSQL native JSON operators.
Best for: API response building
#json#jsonb
sqladvanced
JSON - Technique 12
Work with JSON data
Best for: database operations
#sql#database
sqlintermediate
JSONB Query and Indexing Patterns
Query, filter, and index JSONB columns in PostgreSQL for flexible document-style data storage.
Best for: Flexible metadata storage
#jsonb#postgres
sqladvanced
Recursive CTE for Hierarchical Data
Query hierarchical data like org charts, categories, and file trees using recursive CTEs.
Best for: Querying organizational hierarchies
#sql#cte