title: Filter data by multiple Query Params when object values have different types
body: <p>I've been trying for days to get this thing to work, and I feel like I have the pieces but I don't know what I am missing.</p>
  <p>My object looks like this when it goes to my service:</p>
  <pre><code>GetAllDataFilterDto {
    orgId: 12345,
    status: [ 'approved', 'pending' ],
  }
  </code></pre>
  <p>I am using typeorm, this is my query:</p>
  <pre><code>  protected getAll(filter: GetAllDataFilter): SelectQueryBuilder&lt;EntityName&gt; {
      const qb = Repository&lt;EntityName&gt;
        .createQueryBuilder('entityName')
        .select([
          'entityName.id',
          'entityName.status',
          'entityName.orgId',
        ])
        .groupBy('entityName.id')
        .where(this.getFilterConditions(filter));
  
      return qb;
    }
  </code></pre>
  <p>My query uses getMany() but in a different file which is why it's not included on this function.</p>
  <p>Here's where I am having the issue, my current filter function looks like this:</p>
  <pre><code>  protected getFilterConditions(filter: GetAllDataFilter) {
      return _.pickBy(filter, (value, key) =&gt; value !== undefined &amp;&amp; this.entityProperties.has(key));
    }
  </code></pre>
  <p>entityProperties is a set that looks like this:</p>
  <pre><code>Set {
  'id',
  'status',
  'orgId'
  }
  </code></pre>
  <p>Currently, this filter works for numbers and if my array only has one value, but when I add two values then it returns the error</p>
  <pre><code>trace: QueryFailedError: Operand should contain 1 column(s)
  </code></pre>
  <p>My end goal is to filter my returned data even if there are optional parameters, so all status columns with approved or pending will be returned, but I still need to be able to filter by orgId at the same time.</p>
  <p>Please let me know if there is more I should include, thank you.</p>