zoukankan      html  css  js  c++  java
  • hive sql基础了解

       会有些不一样

      1 例如使用SQL 之前,要了解用了那个库,use jz_daojia

      2 使用GET_JSON_OBJECT 函数等,以及参数 匹配 $.childBrithDay

       挺有意思的。新玩意哦

    --odps sql 
    --********************************************************************--
    --author:jz_admin
    --create time:2019-11-11 10:14:49
    --********************************************************************--
    -- 这是什么意思?
    -- 获取线索id,以及线索标签。
    use jz_daojia;
    SELECT  a.id
            ,CONCAT_WS(',', COLLECT_SET(b.dict_value)) AS clue_labels
    FROM    (
                SELECT  a.id
                        ,b.clue_label
                FROM    (
                            SELECT  a.id
                                    ,GET_JSON_OBJECT(a.prop, '$.busSnapshotDto.clueLable') clue_label
                            FROM    o_jz_clue_t_sale_clue a
                            WHERE   dt = '${bdp.system.bizdate}'
                        ) a
                LATERAL VIEW EXPLODE(SPLIT(clue_label, ',')) b AS clue_label
            ) a LEFT
    JOIN    (
                SELECT  *
                FROM    o_jz_clue_t_dict
                WHERE   dt = '${bdp.system.bizdate}'
                AND     type IN ('target_unconform_label', 'clue_label','target_conform_label')
            ) b
    ON      a.clue_label = b.dict_key
    GROUP BY a.id;
    
    -- 获取
    
    SELECT  a.*
            ,GET_JSON_OBJECT(a.prop, '$.busSnapshotDto.clueLable') clue_label
            ,GET_JSON_OBJECT(
                GET_JSON_OBJECT(prop,'$.busSnapshotDto')
                ,'$.childBrithDay'
            ) AS childbrithday
            ,CASE    WHEN a.category_id = 205 THEN '月嫂'
                     WHEN a.category_id = 270 THEN '育儿嫂'
                     WHEN a.category_id = 212 THEN '保姆' 
                     ELSE '其他' 
             END AS category_name
    FROM    o_jz_clue_t_sale_clue a
    WHERE   dt = '${bdp.system.bizdate}'
    AND     delete_flag = 0
    AND     source_id != 100000680

    基础的GET_JSON_OBJECT函数运用:

    --odps sql 
    --********************************************************************--
    --author:jz_admin
    --create time:2019-11-11 14:27:08
    --********************************************************************--
    获取职员的职业。
    use jz_daojia; SELECT us.* , GET_JSON_OBJECT(us.additional_info,'$.jobTitle') as title_s FROM d_sys_user as us WHERE us.name LIKE "喜" LIMIT 10 ;
  • 相关阅读:
    保存宏的表-TRMAC
    问题解决]Personnel master record xxxx not found (check entry)
    检查员工号是否存在函数[RP_CHECK_PERNR]
    ◆◆0SAP IDOC 开发入门
    IDoc测试工具WE19使用教程
    ◆◆0如何从其他系统导入测试IDOC文件-WE19
    通过message type查找inbound函数-WE57,WE42,
    使用IDOC创建会计凭证[ACC_GL_POSTING01]
    ◆◆0[REUSE_ALV_GRID_DISPLAY_LVC]ALV中字段显示前导零(leading zero)
    不同网段_Pycharm访问服务器
  • 原文地址:https://www.cnblogs.com/sakura3/p/11833872.html
Copyright © 2011-2022 走看看