sql—如何在bigquery上只查询字符串的特定部分

p8h8hvxi  于 2021-07-27  发布在  Java
关注(0)|答案(2)|浏览(400)

我有一个bigquery表,它有一个名为topics的列,在该列下有如下结果 /finance/investing/funds/mutual funds . 如何在bigquery上编写一个查询,只返回前两个斜杠之间的单词,即在本例中,我希望它只返回finance。

xcitsw88

xcitsw881#

只是进一步开发Gordon的答案,以便与您的 ARRAY<STRING> . 你要做的就是 UNNEST 将数组传递给 SPLIT 前面提到的功能。
简单示例:

SELECT SPLIT(string, '/')[safe_ordinal(2)]
FROM UNNEST([ '/finance/investing/funds/mutual funds', '/random/investing/funds/mutual 
funds' ]) AS string
e5nqia27

e5nqia272#

你可以用 split() :

select split('/finance/investing/funds/mutual funds', '/')[safe_ordinal(2)]

相关问题