How to Match() against multiple fields

Say I have a table with a column called ‘Title’, and two hidden columns called ‘URL’ and ‘Description’.

I also have a textbox called ‘note_search’.

The native table search bar only filters based on visible columns (Ps, Coda, feature request >> please let it lookup hidden columns too).

So I want to create a filter that matches multiple column values against the value in that single textbox.

Currently, I have a filter that looks like this:

Title.Matches(note_search) OR Description.Matches(note_search) OR URL.Matches(note_search)

With a lot of columns this can get long and cumbersome to maintain, and executes a lot of functions. I’d rather have a filter that does something like:

[All Columns].Match(note_search)

How?

Thanks :slight_smile:

Hi @Jeremy_G

As far as I know, you cannot make ForEach loop on column (or equivalent) as you can with other tools.
Even if you try to cheat and refer to Table without specifying the column, it will use the display column. In this example, it doesnt find marvel.

I dont know how many columns you want to look in, but indeed the two options would be :

  • creating several Matches() with OR like you did
  • Create a MasterConcatenate column, that will brute-concatenate all column you want to track. Each time you create a relevant column, you must think to add it in your masterconcatenate…

And then, make on single match to this column…

MasterConcatenate idea is interesting, and certainly easier to add columns there than in the filter with multiple OR’s and match()'s. However, from a performance perspective I don’t love the idea of creating new columns with loads of redundant data.

Would be curious if there are any other straight forward solutions for in the filter itself…?

The easiest would be if the search bar actually searched the whole table, regardless of if the column is displayed or not.