PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Nhận tổng hợp của mảng json trong dữ liệu json Postgres NOSQL

Điều này sẽ hoạt động trên 9.3+

WITH x AS( SELECT
'{
  "id": "tran_6ac25129951962e99f28fa488993",
  "amount": 1200,
  "origin_amount": 3900,
  "status": "partial_refunded",
  "description": "Subscription#sub_a67d59efb2bcbf73485a ",
  "livemode": false,
  "refunds": [
    {
      "id": "refund_ee4192ffb6d2caa490a1",
      "amount": 1200,
      "status": "refunded",
      "created_at": 1426412340,
      "updated_at": 1426412340
    },
    {
      "id": "refund_0e4a34e4ee7281d369df",
      "amount": 1500,
      "status": "refunded",
      "created_at": 1426412353,
      "updated_at": 1426412353
    }
  ]
}'::json as y),
refunds AS(
SELECT json_array_elements(y->'refunds') as j FROM x)
SELECT sum((j->>'amount')::int) FROM refunds;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để tránh nhiều hàm ẩn với cú pháp (func ()). * Trong truy vấn SQL?

  2. Docker không nhận dạng thư mục dữ liệu Postgresql

  3. currval Hàm trong PostgreSQL phàn nàn rằng cột không tồn tại

  4. Làm cách nào để đặt cơ sở dữ liệu dưới quyền git (kiểm soát phiên bản)?

  5. Cách tìm tên của một ràng buộc trong PostgreSQL