我想知道是否可以将REGEXP_CONTAINS与另一个表中某列的子字符串列表一起使用。
从本质上讲,我将有一个包含要检查的子字符串列表的表,并且我将对数据集中的整个表名称使用这些子字符串。
下面是我认为可以做到的最接近的近似。
SELECT REGEXP_REPLACE(table_name, '^RESULT_', '')
AS table_names
FROM projects.dataset.INFORMATION_SCHEMA.TABLES
WHERE REGEXP_CONTAINS(table_name, '[0-9]')
AND REGEXP_CONTAINS(table_name, (
SELECT SubStrings
AS strings
FROM project.dataset.SubStringTable))
ORDER BY table_name不幸的是,这个方法给了我一个错误,告诉我从子字符串表中选择返回了太多的参数,所以regexp_contains不能使用它作为输入参数。
在选择表中的子字符串时使用while循环可以解决这个问题吗?例如。
While i <= length(SubStringTable)
SELECT SubStrings(i)
AS string
FROM project.dataset.SubStringTable发布于 2021-07-17 02:46:56
在下面使用
SELECT REGEXP_REPLACE(table_name, '^RESULT_', '') AS table_names
FROM projects.dataset.INFORMATION_SCHEMA.TABLES
WHERE REGEXP_CONTAINS(table_name, '[0-9]')
AND (
SELECT LOGICAL_OR(REGEXP_CONTAINS(table_name, SubStrings))
FROM `project.dataset.SubStringTable`
)https://stackoverflow.com/questions/68410821
复制相似问题