Câu hỏi phỏng vấn PostgreSQL
Câu hỏi

Làm sao để truy vấn một trường JSONB trong PostgreSQL?

Câu trả lời

markdown Copy
Để truy vấn một trường **JSONB** trong PostgreSQL, bạn có thể sử dụng các toán tử và hàm đặc biệt hỗ trợ kiểu dữ liệu này. Một số phương thức phổ biến giúp truy vấn JSONB như sau:

- **Truy cập phần tử**: Sử dụng toán tử `->` hoặc `->>` để truy cập phần tử bên trong. Toán tử `->` trả về một phần tử dưới dạng JSONB, trong khi `->>` trả về dưới dạng text. Ví dụ:
  ```sql
  SELECT data->'key' FROM my_table WHERE data->'key' = 'value';
  SELECT data->>'key' AS key_value FROM my_table;
  • Toán tử chứa: Sử dụng toán tử @> để kiểm tra xem một JSONB chứa một JSON con cụ thể. Ví dụ:

    sql Copy
    SELECT * FROM my_table WHERE data @> '{"key": "value"}';
  • Truy vấn với điều kiện: Để lọc các trường hợp cụ thể trong JSONB, có thể sử dụng kết hợp với cú pháp JSON Path...

middle

middle

Gợi ý câu hỏi phỏng vấn

senior

PostgreSQL hỗ trợ parallel query như thế nào? Điều kiện để kích hoạt?

senior

Bạn từng setup streaming replication hoặc logical replication chưa? Khác nhau?

middle

CTE (WITH statement) trong PostgreSQL dùng để làm gì? Khác gì subquery?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào