Forum Discussion

cgkas's avatar
cgkas
Icon for Helper V rankHelper V
7 years ago
Solved

How to shorten multiple OR conditions when filtering column in Power Query

Hello to all,

 

I Have to filter Column1 (Col1) for values A, B, C, D, E or F doing this:

= Table.SelectRows(#"Previous Step", each ([Col1] = "A" or [Col1] = "B" or [Col1] = "C" or [Col1] = "D" or [Col1] = "E" or [Col1] = "F"))

If I have several OR conditions is possible to do in a shortest way?, something similar to this?

= Table.SelectRows(#"Previous Step", each ([Col1] = {"A","B","C","D","E","F"}))

Thanks in advance

  • Hi cgkas,

    Try List.Contains. Something like:

     

    Table.SelectRows(#"Previous Step", each (List.Contains({"A","B","C","D","E","F"},[Col1])))

     

4 Replies

  • AlB's avatar
    AlB
    Icon for Community Champion rankCommunity Champion

    Hi cgkas,

    Try List.Contains. Something like:

     

    Table.SelectRows(#"Previous Step", each (List.Contains({"A","B","C","D","E","F"},[Col1])))

     

    • cgkas's avatar
      cgkas
      Icon for Helper V rankHelper V

      Many thanks AIB,

       

      It seems to work. 

       

      I know is another question, only to know if it is possible to use wildcards (regex) to shorten even more. Something like this:

       

      Table.SelectRows(#"Previous Step", each (List.Contains({"AB*","BC*"},[Col1])))

       

       

      • AlB's avatar
        AlB
        Icon for Community Champion rankCommunity Champion

        cgkas 

        In this case you could use

        List.Contains({"A".."F"},[Col1])

        which will include all letters between A and F.

        As for the wildcards, maybe this posting will be useful