如何使用 BigQuery 查找字符串中子字符串的计数?

LAH*_*WAR 1 google-bigquery

我想知道“fizz”在 bigquery 或 sql 的“fizzbuzzfizz”字符串中出现了多少次。这里的输出应该是2。

Tam*_*ein 10

你可以使用REGEXP_EXTRACT_ALLand ARRAY_LENGTH,看这个sql:

WITH data AS(
  SELECT 'fizzbuzzfizz' as string
  )

SELECT
  ARRAY_LENGTH(REGEXP_EXTRACT_ALL(string, "fiz")) AS size FROM data;
Run Code Online (Sandbox Code Playgroud)

产生这个:

在此输入图像描述