PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Zapytanie Rails (postgres) z tablicą jsonb

To, czego chcesz użyć, to @> operator , który sprawdza, czy wartość po lewej stronie zawiera wartość po prawej stronie. „Zawiera” działa zarówno dla obiektów, jak i tablic, więc zadziałałoby następujące zapytanie:

SELECT * FROM products WHERE specs->'spec_options' @> '["spec1", "spec2"]';

Który, jak sądzę, można przekształcić w składnię zgodną z ActiveRecord w następujący sposób:

scope :with_spec_options, ->(spec_options) { 
  where("specs->'spec_option' @> ?", spec_options.to_json) 
}



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ebean szuka niewłaściwej nazwy sekwencji w Play Framework 2

  2. Jak znaleźć nazwę bazy danych folderów \data\base postgres?

  3. Przekazywanie tabeli jako parametru

  4. Posiadanie ogólnej kolumny GEOGRAFIA z PostGIS

  5. Nie można uruchomić harmonogramu web2py przy użyciu bazy danych postgresql