BigQuery中有这个版本吗?
基本上我需要一个BASE64字母并将其一致地转换为数值(对于BASE64索引或ASCII - 对我没有区别。)
到目前为止,我发明了2个选项: - 使用UDF - 加入一个包含所有64个字母和索引的表。
但这两个解决方案看起来有点过于复杂。还有更好的办法吗?
答案 0 :(得分:4)
使用BigQuery将字母转换为ASCII的另一个选项:
SELECT
char,
INSTR('@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz', char)
+ 63 AS ascii
FROM
(SELECT 'A' AS char),
(SELECT 'H' AS char),
(SELECT 'a' AS char),
(SELECT 'h' AS char)
答案 1 :(得分:0)
相当于BigQuery中的ASCII函数,但您需要从select to_code_points(substr(x, 1, 1))[offset(0)]
构建它:
to_code_points
ASCII()
将字符串的字符集值作为数组返回。这个构造获取字符串的第一个字符,获取数组中的值,然后返回数组中的第一个值 - Voila! v0.24.3
。