cube-js/cube

Regex Support in Filter

Open

#3,499 opened on 2021年9月29日

GitHub で見る
 (3 comments) (0 reactions) (0 assignees)Rust (1,965 forks)batch import
backend:serverhelp wanted

Repository metrics

Stars
 (19,563 stars)
PR merge metrics
 (平均マージ 5d 16h) (30d で 138 merged PRs)

説明

Is your feature request related to a problem? Please describe.

It would be great to have Regex operator in filter. Consider the following example where I have some strings:

"A, A B, B, B C", "A", "A B, C"

I want to get all the strings that have A, with expected result : "A, A B, B, B C", "A".

If we use contains, because of wildcards ('%A%'), it will give "A, A B, B, B C", "A", "A B, C" which is incorrect. If I use regex, then I can get the result as I would like it. Also, if you support regex, we can indirectly get support for array columns as well (convert array as comma-separated column)

Describe the solution you'd like:

It would be great, if we can have a regex filter, which sets the passed regex to the passed column with the values.

Example:

{
  "member": "COLUMN",
  "operator": "regex",
  "values": ["<REGEX_PATTERN>"]
}

This would eventually be resolved as where REGEXP_CONTAINS(COLUMN, 'REGEX_PATTERN')

Describe alternatives you've considered

Query through cube, to get all the column value, filter it after getting the resultset. But this approach, looses the cube (for logic purposes).

コントリビューターガイド