2016-11-04 435 views
2

我无法检查我的表的jsonb列是否为空。如何检查jsonb列是否为空Postgres

我列方向当空已值“{}”

试过以下

Model.where("directions != '{}'") <- brings all 
Model.where("directions <@ '{}'") <- brings all 

是那里,我不知道任何其他方式?使用PostgreSQL 9.6

+0

'Model.where( “!=方向 '{}'”)'应该工作,但是'Model.where.not(方向:'{}')'感觉更有价值(但相当于)。如果这些查询返回所有数据,那么您确定您有任何实际路线数据的实例吗? – Frost

+0

@Frost工作的唯一语法是'Model.where.not(方向:'{}')'。回答你的问题是,我有两种情况的记录。 –

回答

1
Model.where.not(directions: '{}') 
-1

尝试否定查询与.not

Model.where.not("directions = '{}'") 
+0

对不起,这种语法不起作用 –

+0

我同意佩特罗斯,这是截至2017年和Rails 4无效的语法。 – user478798