【问题标题】:Using like operator to check for pattern in hive使用 like 运算符检查 hive 中的模式
【发布时间】:2017-08-06 03:47:21
【问题描述】:

我需要从蜂巢表中检索必须以大写字母开头并以数字结尾的列。 我使用了这个查询

select * from tab1 where col1 like '[A-Z]%[0-9]';

但无法检索记录,只得到空结果。

【问题讨论】:

    标签: sql regex hive hiveql sql-like


    【解决方案1】:

    rlike / 正则表达式

    select * from tab1 where col1 rlike '^[A-Z].*[0-9]$';
    

    【讨论】:

    • 非常感谢!!..您能否提供一个学习此 reg 表达式的教程链接...因为我是 hive 新手。
    • 请注意有正则表达式方言,相关的是PCRE (1) regular-expressions.info (2) perldoc.perl.org/perlre.html跨度>
    • 你能告诉我应该使用哪种正则表达式来验证日期格式 YYYY-MM-DD。?
    • 基本检查是:select '2017-03-15' rlike '\\d{4}-\\d{2}-\\d{2}';\\d 代表数字),但我建议以另一种方式:select cast('2017-03-15' as date),cast('2017-01-32' as date);
    猜你喜欢
    • 1970-01-01
    • 2018-12-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多