• Hive 笔记


    1. DESCRIBE EXTENDED mydb.employees  DESCRIBE EXTENDED mydb.employees DESCRIBE EXTENDED mydb.employees
    2. hive> SHOW PARTITIONS employees;   SHOW PARTITIONS command

    3. Hive : select from group by : group by 对聚合操作之外的字段使用. 先是 from group by 执行后, 才执行select操作.

    4. Hive 数据库时间转换: tbl_pv_hour.time字段, 格式是

      20141019 10:40:01

      20141019 10:51:25

      20141019 10:51:02

      20141019 10:42:03

      20141019 10:41:47

      转换成 基准时间是unix_timestamp(time,'yyyyMMdd HH:mm:ss'), 时间格式字符串不可少.

      select unix_timestamp(time,'yyyyMMdd HH:mm:ss') from tbl_pv_hour where dt="20141019" limit 5;

    5. GROUP BY : 分组, 将同一个 字段的同一个值, 聚合为一组. 组中是一个关键字的多条记录.

      在此基础上, 再使用聚合函数:max() min() sum() 等, 则会在一个 关键字值 对应的 分组中 找到 最大(max()) 最小(min()) 的一条记录, 即实现了去重.​

      示例:

      INSERT INTO TABLE default.general_details_day_gaozs

          SELECT letv_cookie,max(ip),max(country),max(area),max(province),max(city),max(nettype),max(os),

              max(os_version),p1,p2,max(p3),max(app),max(brand),max(terminal_id),max(resolution),max(browser),max(fake)

          FROM data_raw.tbl_env_hour

          WHERE dt=${datetime} and product=1

          GROUP BY letv_cookie,p1,p2

      其中  GROUP BY letv_cookie,p1,p2 将数据分组, max()将分组中最大值取出, 完成去重. 语句中不出现distinct, 没用.

    6. 好的

  • 相关阅读:
    java多线程小节, 总结的不错
    奇瑞风云, 你还在路上么
    android NDK 环境建立
    外企下岗白领正成为“新4050”
    搭积木
    祝MORIENTES在LIVERPOOL有所成就
    简单生活
    为什么要更新
    归去来
    随记一笔
  • 原文地址:https://www.cnblogs.com/xiangwengao/p/4095402.html
Copyright © 2020-2023  润新知