title: How to query a json column for empty objects?
body: <p>Looking to find all rows where a certain json column contains an empty object, <code>{}</code>. This is possible with JSON arrays, or if I am looking for a specific key in the object. But I just want to know if the object is empty. Can't seem to find an operator that will do this.</p>
  
  <pre><code> dev=# \d test
       Table "public.test"
    Column | Type | Modifiers
   --------+------+-----------
    foo    | json |
  
   dev=# select * from test;
      foo
   ---------
    {"a":1}
    {"b":1}
    {}
   (3 rows)
  
   dev=# select * from test where foo != '{}';
   ERROR:  operator does not exist: json &lt;&gt; unknown
   LINE 1: select * from test where foo != '{}';
                                        ^
   HINT:  No operator matches the given name and argument type(s). You might need to add explicit type casts.
   dev=# select * from test where foo != to_json('{}'::text);
   ERROR:  operator does not exist: json &lt;&gt; json
   LINE 1: select * from test where foo != to_json('{}'::text);
                                        ^
   HINT:  No operator matches the given name and argument type(s). You might need to add explicit type casts.
   dwv=# select * from test where foo != '{}'::json;
   ERROR:  operator does not exist: json &lt;&gt; json
   LINE 1: select * from test where foo != '{}'::json;
                                        ^
   HINT:  No operator matches the given name and argument type(s). You might need to add explicit type casts.
  </code></pre>