我有一个presto查询,它在where子句中包含一些日语字符
select col1 from xyz where col = '自社在庫' // example
出于某种原因,我需要解释这个查询并进行一些验证,为此我使用了facebookprestosql解析器。但是当我使用com.facebook.presto.sql.SqlFormatter.formatSql(sqlParsed, null);
时返回的字符串如下所示:
SELECT col1 FROM xyz WHERE (colr = **U&'81EA793E57285EAB'**)
是否应将其转换为select col1 from xyz where colr = 'u81EAu793Eu5728u5EAB'
任何方式我都可以转换U&'\81EA\793E\5728\5EAB"返回"自社在庫' ?
presto序列化程序似乎做了一些与您预期不同的事情。我会尝试在presto库中搜索解决方案。
如果这不起作用,您可以通过去掉前导和尾随星号来翻译字符串,然后用u
替换每个,然后返回到您假设的结果。