Meine Frage ist spezifisch für Rails + postgres Hstore Datentyp.Rails Postgres Hstore: Abfrage nach einem bestimmten Schlüssel mit einem der angegebenen Werte
Die WHERE IN [1,2, 3]
oder die Schienen entspricht Model.where(data: [1,2,3])
funktioniert für normale Spalten, aber nicht für hstore.
Ich habe eine Hstore-Spalte (sagen wir info
) und ich möchte Zeilen abfragen, die einen bestimmten Schlüssel und einen der angegebenen Werte haben.
Zum Beispiel: alle Bücher zu finden, die einen Schlüssel als ‚Autor‘ und Wert als ‚ABC‘ in hstore Spalte, die folgende Abfrage funktioniert haben:
Book.where("info @> hstore(:key, :value)", key: "author", value: "ABC")
Aber ich brauche eine Abfrage, gibt Datensätze zurück, die einen Schlüssel als 'Autor' und einen der Werte in ['ABC', 'XYZ', 'PQRS', 'DFG'] haben.
Irgendwelche Vorschläge?
Danke. Das hat funktioniert, aber ohne Index-Unterstützung wie du gesagt hast. – ranjan