PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Извличане на имена на ключове с истински стойности от JSONB обект

jsonb има оператор за равенство (=; за разлика от json ), за да можете да пишете

SELECT key
FROM   jsonb_each('{"aaa": true, "bbb": false}')
WHERE  value = jsonb 'true'

jsonb_each_text() разчитате на текстово представяне на някои JSON стойности).

Можете дори да включите някои допълнителни стойности, ако искате:

WHERE  value IN (to_jsonb(TRUE), jsonb '"true"', to_jsonb('truthy'))

IN използва оператора за равенство под капака.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Бавно работеща заявка на Postgres

  2. Извличане на броя на редовете и връщане на 0, когато няма редове

  3. psycopg2 еквивалент на mysqldb.escape_string?

  4. Промяна на поле Enum с помощта на Alembic

  5. Има ли пряк път за SELECT * FROM?