presto sql 过滤部分字符串 java
presto sql filter part of the string java
我在 col1 中有一个字符串 select col1 from table
"blah blah 123 blah iterate 866 loss blah blah"
如何过滤 iterate
和 loss
之间的字符串并仅显示所有此类过滤数字的总和?
您可以使用 regexp_extract
提取该字符串中的数字,将值转换为数字类型并将它们相加:
WITH t(v) AS (
VALUES 'blah blah 123 blah iterate 866 loss blah blah'
)
SELECT sum(CAST(regexp_extract(v, 'iterate (\d+) loss', 1) AS bigint))
FROM t
我在 col1 中有一个字符串 select col1 from table
"blah blah 123 blah iterate 866 loss blah blah"
如何过滤 iterate
和 loss
之间的字符串并仅显示所有此类过滤数字的总和?
您可以使用 regexp_extract
提取该字符串中的数字,将值转换为数字类型并将它们相加:
WITH t(v) AS (
VALUES 'blah blah 123 blah iterate 866 loss blah blah'
)
SELECT sum(CAST(regexp_extract(v, 'iterate (\d+) loss', 1) AS bigint))
FROM t