title: sequelize how to select child of childs in a single table?
body: <p>I have the following table in a postgresql database</p>
  
  <pre><code>id | name       |active| parentId
  --------------------------------
  1  | food       | true | null
  2  | soft drink | true | 1
  3  | canned food| true | 1
  4  | sweet      | true | 1
  5  | candy      | true | 4
  6  | chocolate  | true | 4
  7  | chemical   | true | null
  </code></pre>
  
  <p>As you can see they are connected with a parent-child relationship by their Ids</p>
  
  <p>like: food -> sweet -> candy, chocolate</p>
  
  <p>I want to write a query with sequelize which will return the parent and all associated children. </p>
  
  <p>Let's say I choose <code>food</code>, the query should return all the rows where the <code>parentId</code> equals to the <code>id</code> 1, then return all the rows where <code>parentId</code> equals 2,3,4 (the food's children), then return all the rows where <code>parentId</code>
  equals 5,6 (sweet's children) etc, as long as there are children.</p>
  
  <p>Is it doable in a single where object?</p>
  
  <pre><code>db.ItemGroup.findAll({
    where: {
      // query
    }
  });
  </code></pre>