如何处理分号“;”在字符串比较中?

时间:2019-05-15 18:37:22

标签: hive hiveql

我正在编写一个Hive查询,我需要将PIN(列)与字符串值进行比较。该引脚已加密,并且加密的值包含特殊字符。 我需要选择所有PIN码包含此加密值的行。

例如, > library(quantmod) > getSymbols("^FTSE") > get("FTSE") FTSE.Open FTSE.High FTSE.Low FTSE.Close FTSE.Volume FTSE.Adjusted 2007-01-02 6220.8 6312.5 6220.8 6310.9 1074946500 6310.9 2007-01-03 6310.9 6322.0 6296.0 6319.0 1606892700 6319.0

这导致select * from prod_db.prod_table where pin='ab;xzh[Ge';被作为分隔符读取,并导致;错误。

有没有办法解决这个问题?谢谢!

2 个答案:

答案 0 :(得分:1)

\073替换分号或尝试用双斜杠\\;逃逸分号:

select * from prod_db.prod_table where pin='ab\073xzh[Ge';

select * from prod_db.prod_table where pin='ab\\;xzh[Ge';

答案 1 :(得分:0)

如果您只是要比较的一个值,请使用'\'转义特殊字符。

select * from prod_db.prod_table where pin='ab\;xzh[Ge';