impala常用命令(持续更新ing)

impala常用命令

  • 1,表字段
    • 查看
    • 条件判断
      • Null判断
        • 数值表达式
      • 布尔值
      • 条件选择
    • 字段函数
      • 类型转换
      • 日期
      • 统计
      • 字符串相关
      • 字符串字段是否包含某个pattern
      • 排序
  • 2,查找表
    • 找出库中包含某些字符串的所有表
  • 3,表分区
    • 查看分区

1,表字段

查看

  • 查看表内容,字段类型,字段描述等
    describe TableName

条件判断

Null判断

  • NVL(X, Y)/ ifnull(X, Y)/isnull(X, Y)
    当X非NULL时返回X 取值,否则返回Y取值。
  • coalesce(X, Y, Z, ...)
    返回输入参数中的第一个非NULL值,如果所有输入参数均为NULL,则返回NULL
  • nullif(X, Y)
    如果两个表达式相等,则返回NULL。如果两个表达式不相等,则返回第一个达式的值。两个表达式的数据类型必须保持兼容。另外,第一个表达式不能为NULL,如果它为NULL,将永远不会与第二个表达式进行匹配。
    该函数通常被使用在除法表达式中来防止被除数为零的情况。例如select 1.0 /nullif(expr,0) as rate from table_xxxxx

数值表达式

  • nullifzero(numeric expr)
    如果表达式为0,则返回NULL;如果表达式为非零,则返回表达式本身。返回类型与原始的返回值类型相同。返回值若是整型会被提升为 BIGINT型,若是 FLOAT型会被提升为 DOUBLE型。如果对应的列不允许像BIGINT或者 DOUBLE这样的高精度的类型,需要使用 CAST()函数进行强制类型转换
  • zeroifnull(numeric expr)
    如果表达式为NULL,则返回0,如果表达式为非NULL,则返回表达式本身。注意表达式类型需为numeric。

布尔值

  • if(boolean表达式, 真时返回值, 假或null时候的返回值)
  • istrue(boolean), isfalse(boolean), isnottrue(boolean), isnotfalse(boolean)

条件选择

  • case when ... then ... [else when ... then ...] else ... end

字段函数

类型转换

  • cast(X as type)
    类型转换
  • to_date(string)
    字符串转换成日期

日期

  • to_date(string)
    字符串转换成日期

  • datediff(string, string)
    计算两个日期之间的天数差
    在这里插入图片描述

  • from_unixtime(timestamp [, format])
    时间戳转化为指定的日期格式

    参数说明
    timestamp :时间戳,可为一串数字,也可为字段。
    date_format:时间格式,不填默认为%Y-%m-%d %H:%i:%s的格式。
    

统计

  • NDV()
    返回一个类似于COUNT(DISTINCT col )结果的近似值。

字符串相关

  • substr(string a, int start, [int len])
    返回从指定点开始的字符串部分,可选地指定最大长度。注意start从1开始,如果start为0,则返回空。

字符串字段是否包含某个pattern

  • like '%pattern%'
    注意这里是%,在库里查表时用的是*

排序

  • ROW_NUMBER() OVER (partition BY COLUMN_A ORDER BY COLUMN_B ASC/DESC)
    partition by:类似hive的建表,分区的意思;COLUMN_A 是分组字段
    order by :排序,默认是升序,加desc降序;COLUMN_B 是排序字段

2,查找表

找出库中包含某些字符串的所有表

show tables in DataBase like '*abc*'

3,表分区

查看分区

show partitions TableName;

参考:
https://blog.csdn.net/zy103118/article/details/101028394

你可能感兴趣的:(impala)