I'm trying to find all instances of rows where one of the array items contains a value, ignoring the case in Google BigQuery.
I'm able to do this:
SELECT
COUNT(*)
FROM
`my_bq_project.my_bq_dataset.my_table`
WHERE
(
'AAA' IN UNNEST(array_1.array_2.some_text)
)
This works well for finding 'AAA' inside array_1.array_2.some_text. But I would like to also find 'aaa', 'Aaa', and so forth.
But this does not work:
SELECT
COUNT(*)
FROM
`my_bq_project.my_bq_dataset.my_table`
WHERE
(
'AAA' IN UNNEST(LOWER(array_1.array_2.some_text))
)
And I would like to refrain from duplicating the where statement (adding where conditions for 'AaA', 'aaa', etc.).
Is there a way to apply string functions like LOWER on struct fields that are in arrays in BigQuery SQL?
Thanks