范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

SparkSQL电商用户画像(九)之用户画像开发(客户访问信息表

  --用户画像-客户访问信息表  drop table if exists gdm.itcast_gdm_user_visit;  create external table gdm.itcast_gdm_user_visit(  user_id string ,--客户ID  latest_pc_visit_date string ,--最近一次PC端访问日期  latest_app_visit_date string ,--最近一次APP端访问日期  latest_pc_visit_session string ,--最近一次PC端访问的session  latest_pc_cookies string ,--最近一次PC端访问的cookies  latest_pc_pv string ,--最近一次PC端访问的PV  latest_pc_browser_name string ,--最近一次PC端访问使用的游览器  latest_pc_visit_os string ,--最近一次PC端访问使用的操作系统  latest_app_name string ,--最近一次APP端访问app名称  latest_app_visit_os string ,--最近一次APP端访问使用的操作系统  latest_visit_ip string ,--最近一次访问IP(不分APP与PC)  latest_city string ,--最近一次访问城市(不分APP与PC)  latest_province string ,--最近一次访问省份(不分APP与PC)  first_pc_visit_date string ,--第一次PC端访问日期  first_app_visit_date string ,--第一次APP端访问日期  first_pc_visit_session string ,--第一次PC端访问的session  first_pc_cookies string ,--第一次PC端访问的cookies  first_pc_pv string ,--第一次PC端访问的PV  first_pc_browser_name string ,--第一次PC端访问使用的游览器  first_pc_visit_os string ,--第一次PC端访问使用的操作系统  first_app_name string ,--第一次APP端访问app名称  first_app_visit_os string ,--第一次APP端访问使用的操作系统  first_visit_ip string ,--第一次访问IP(不分APP与PC)  first_city string ,--第一次访问城市(不分APP与PC)  first_province string ,--第一次访问省份(不分APP与PC)  day7_app_cnt bigint ,--近7天APP端访问次数  day15_app_cnt bigint ,--近15天APP端访问次数  month1_app_cnt bigint ,--近30天APP端访问次数  month2_app_cnt bigint ,--近60天APP端访问次数  month3_app_cnt bigint ,--近90天APP端访问次数     day7_pc_cnt bigint ,--近7天PC端访问次数  day15_pc_cnt bigint ,--近15天PC端访问次数  month1_pc_cnt bigint ,--近30天PC端访问次数  month2_pc_cnt bigint ,--近60天PC端访问次数  month3_pc_cnt bigint ,--近90天PC端访问次数     month1_pc_days bigint ,--近30天PC端访问天数  month1_pc_buy_cnt bigint ,--近30天PC端访问购买次数  month1_pc_pv bigint ,--近30天PC端访问PV  month1_pc_avg_pv bigint ,--近30天PC端访问平均PV  month1_pc_diff_ip_cnt bigint ,--近30天PC端访问不同ip数  month1_pc_common_ip bigint ,--近30天PC端访问最常用ip  month1_pc_diff_cookie_cnt bigint ,--近30天PC端访问不同的cookie数  month1_pc_common_cookie bigint ,--近30天PC端访问最常用的cookie  month1_pc_common_browser_name     bigint ,--近30天PC端访问最常用游览器  month1_pc_common_os bigint ,--近30天PC端访问最常用的操作系统     month1_hour025_cnt        bigint ,--近30天0-5点访问次数(不分PC与APP)  month1_hour627_cnt bigint ,--近30天6-7点访问次数(不分PC与APP)  month1_hour829_cnt bigint ,--近30天8-9点访问次数(不分PC与APP)  month1_hour10212_cnt bigint ,--近30天10-12点访问次数(不分PC与APP)  month1_hour13214_cnt bigint ,--近30天13-14点访问次数(不分PC与APP)  month1_hour15217_cnt bigint ,--近30天15-17点访问次数(不分PC与APP)  month1_hour18219_cnt bigint ,--近30天18-19点访问次数(不分PC与APP)  month1_hour20221_cnt bigint ,--近30天20-21点访问次数(不分PC与APP)  month1_hour22223_cnt bigint ,--近30天22-23点访问次数(不分PC与APP)  dw_date        timestamp  ) partitioned by (dt string);------用户上网轨迹表BDM层--PC端  DROP TABLE IF EXISTS bdm.itcast_bdm_user_pc_click_log ;  CREATE external TABLE bdm.itcast_bdm_user_pc_click_log (    session_id STRING,  --sessionID    cookie_id STRING,   --cookieID    visit_time STRING,  --访问时间    user_id STRING,     --用户ID    visit_url STRING,   --访问的URL    visit_os STRING,    --操作系统    browser_name STRING,--游览器名称    visit_ip STRING,    --访问ip    province STRING,    --省份    city STRING,        --城市    page_id STRING,     --页面ID    goods_id STRING,    --商品ID    shop_id STRING      --商店ID  ) partitioned by (dt string)  row format delimited fields terminated by ","  lines terminated by " ";  alter table bdm.itcast_bdm_user_pc_click_log add partition (dt="2017-01-01") location "/business/itcast_bdm_user_pc_click_log/2017-01-01";  hdfs dfs -put itcast_bdm_user_pc_click_log.txt /business/itcast_bdm_user_pc_click_log/2017-01-01------用户上网轨迹表FDM层--PC端  DROP TABLE IF EXISTS fdm.itcast_fdm_user_pc_pageview ;  CREATE external TABLE fdm.itcast_fdm_user_pc_pageview (    session_id STRING,  --sessionID    cookie_id STRING,   --cookieID    user_id STRING,     --用户ID    in_time STRING,     --访问进入时间    out_time STRING,    --访问离开时间    stay_time STRING,   --访问停留时间    pv BIGINT,          --PV    visit_os STRING,    --操作系统    browser_name STRING,--游览器名称    visit_ip STRING,     --访问ip    province STRING,    --省份    city STRING         --城市  ) partitioned BY (dt STRING);  -------------加载数据---  INSERT overwrite TABLE fdm.itcast_fdm_user_pc_pageview PARTITION (dt = "2017-01-01")  SELECT    t.session_id,    t.cookie_id,    t.user_id,    MIN(visit_time) in_time,    MAX(visit_time) out_time,    (      case        WHEN MIN(visit_time) = MAX(visit_time)        then 5        else unix_timestamp(MAX(visit_time)) - unix_timestamp(MIN(visit_time))      end    ) stay_time,    COUNT(1) pv,    t.visit_os,    t.browser_name,    t.visit_ip,    t.province,    t.city  FROM    bdm.itcast_bdm_user_pc_click_log t  WHERE dt = "2017-01-01"  GROUP BY t.session_id,    t.cookie_id,    t.user_id,    t.visit_os,    t.browser_name,    t.visit_ip,    t.province,    t.city ;------用户上网轨迹表BDM层--APP端  drop table if exists bdm.itcast_bdm_user_app_click_log;  create external table bdm.itcast_bdm_user_app_click_log(    user_id string,        --用户ID    log_time string,       --访问时间    phone_id string,       --手机ID,唯一标识一台设备    visit_os string,        --操作系统 android、ios、wp    os_version string,     --操作系统版本    app_name string,     --APP的名称    app_version string,    --APP的版本    device_token string,   --PUSH码,消息推送的    visit_ip string,        --访问ip    province string,       --省份    city string            --城市  ) partitioned by (dt string)  row format delimited fields terminated by ","  lines terminated by " ";  alter table bdm.itcast_bdm_user_app_click_log add partition (dt="2017-01-01") location "/business/itcast_bdm_user_app_click_log/2017-01-01";  hdfs dfs -put itcast_bdm_user_app_click_log.txt /business/itcast_bdm_user_app_click_log/2017-01-01  --Push指运营人员通过自己的产品或第三方工具对用户移动设备进行的主动消息推送。用户可以在移动设备锁定屏幕和通知栏看到push消息通知,通知栏点击可唤起APP并去往相应页面。我们平时在锁屏上看到的微信消息等等都属于APP消息推送行列。------用户上网轨迹表FDM层--app端  DROP TABLE IF EXISTS fdm.itcast_fdm_user_app_pageview ;  CREATE external TABLE fdm.itcast_fdm_user_app_pageview (    user_id string,        --用户ID    log_time string,       --访问时间    log_hour string,     --访问时间的小时数    phone_id string,       --手机ID,唯一标识一台设备    visit_os string,       --操作系统 android、ios、wp    os_version string,     --操作系统版本    app_name string,      --APP的名称    app_version string,    --APP的版本    device_token string,   --PUSH码,消息推送的    visit_ip string,       --访问ip    province string,       --省份    city string            --城市  ) partitioned BY (dt STRING);     -------------加载数据---  INSERT overwrite TABLE fdm.itcast_fdm_user_app_pageview PARTITION (dt = "2017-01-01")  SELECT    t.user_id,    t.log_time,    HOUR(t.log_time) log_hour,    t.phone_id,    t.visit_os,    t.os_version,    t.app_name,    t.app_version,    t.device_token,    t.visit_ip,    t.province,    t.city  FROM    bdm.itcast_bdm_user_app_click_log t  WHERE dt = "2017-01-01" ;--生成临时表-统计出用户近30天访问的ip/cookie/游览器信息  drop table if exists gdm.itcast_gdm_user_visit_temp_01;  create table gdm.itcast_gdm_user_visit_temp_01 as  select    t.user_id,    t.type,    t.con,    t.cnt,    t.rn  from    (select      b.user_id,      b.con,      b.type,      b.cnt,      row_number () over (        distribute by b.user_id,        b.type sort by b.cnt desc      ) rn    from      (select        a.user_id,        a.visit_ip con,        "visit_ip" type,        count(1) cnt      from        fdm.itcast_fdm_user_pc_pageview a      where dt >= date_add("2017-01-01", -29)      group by a.user_id,        a.visit_ip      union      all      select        a.user_id,        a.cookie_id con,        "cookie_id" type,        count(1) cnt      from        fdm.itcast_fdm_user_pc_pageview a      where dt >= date_add("2017-01-01", -29)      group by a.user_id,        a.cookie_id      union      all      select        a.user_id,        a.browser_name con,        "browser_name" type,        count(1) cnt      from        fdm.itcast_fdm_user_pc_pageview a      where dt >= date_add("2017-01-01", -29)      group by a.user_id,        a.browser_name      union      all      select        a.user_id,        a.visit_os con,        "visit_os" type,        count(1) cnt      from        fdm.itcast_fdm_user_pc_pageview a      where dt >= date_add("2017-01-01", -29)      group by a.user_id,        a.visit_os) b) t ;-------生成客户访问模型表  -------------加载数据---  INSERT overwrite TABLE fdm.itcast_fdm_user_app_pageview PARTITION (dt = "2017-01-01")  SELECT    t.user_id,    t.log_time,    HOUR(t.log_time) log_hour,    t.phone_id,    t.visit_os,    t.os_version,    t.app_name,    t.app_version,    t.device_token,    t.visit_ip,    t.province,    t.city  FROM    bdm.itcast_bdm_user_app_click_log t  WHERE dt = "2017-01-01" ; ------近30天PC端访问最常用的指标  drop table if exists gdm.itcast_gdm_user_visit_temp_01;  create table gdm.itcast_gdm_user_visit_temp_01 as  select    t.user_id,    t.type,    t.con,    t.cnt,    t.rn  from    (select      b.user_id,      b.con,      b.type,      b.cnt,      row_number () over (        distribute by b.user_id,        b.type sort by b.cnt desc      ) rn    from      (select        a.user_id,        a.visit_ip con,        "visit_ip" type,        count(1) cnt      from        fdm.itcast_fdm_user_pc_pageview a      where dt >= date_add("2017-01-01", -29)      group by a.user_id,        a.visit_ip      union      all      select        a.user_id,        a.cookie_id con,        "cookie_id" type,        count(1) cnt      from        fdm.itcast_fdm_user_pc_pageview a      where dt >= date_add("2017-01-01", -29)      group by a.user_id,        a.cookie_id      union      all      select        a.user_id,        a.browser_name con,        "browser_name" type,        count(1) cnt      from        fdm.itcast_fdm_user_pc_pageview a      where dt >= date_add("2017-01-01", -29)      group by a.user_id,        a.browser_name      union      all      select        a.user_id,        a.visit_os con,        "visit_os" type,        count(1) cnt      from        fdm.itcast_fdm_user_pc_pageview a      where dt >= date_add("2017-01-01", -29)      group by a.user_id,        a.visit_os) b) t ;        -------生成客户访问模型表     INSERT overwrite TABLE gdm.itcast_gdm_user_visit PARTITION (dt = "2017-01-01")  SELECT    t.user_id,--客户ID    MAX(      CASE        WHEN pc.rn_desc = 1        THEN pc.in_time      END    ) latest_pc_visit_date,--最近一次PC端访问日期    MAX(      CASE        WHEN app.rn_desc = 1        THEN app.log_time      END    ) latest_app_visit_date,--最近一次APP端访问日期    MAX(      CASE        WHEN pc.rn_desc = 1        THEN pc.session_id      END    ) latest_pc_visit_session,--最近一次PC端访问的session    MAX(      CASE        WHEN pc.rn_desc = 1        THEN pc.cookie_id      END    ) latest_pc_cookies,--最近一次PC端访问的cookies    MAX(      CASE        WHEN pc.rn_desc = 1        THEN pc.pv      END) latest_pc_pv,--最近一次PC端访问的PV    MAX(      CASE        WHEN pc.rn_desc = 1        THEN pc.browser_name      END    ) latest_pc_browser_name,--最近一次PC端访问使用的游览器    MAX(      CASE        WHEN pc.rn_desc = 1        THEN pc.visit_os      END    ) latest_pc_visit_os,--最近一次PC端访问使用的操作系统    MAX(      CASE        WHEN app.rn_desc = 1        THEN app.app_name      END    ) latest_app_name,--最近一次APP端访问app名称    MAX(      CASE        WHEN app.rn_desc = 1        THEN app.visit_os      END    ) latest_app_visit_os,--最近一次APP端访问使用的操作系统    MAX(      CASE        WHEN pc.rn_desc = 1        AND app.rn_desc = 1        AND pc.in_time >= app.log_time        THEN pc.visit_ip        WHEN pc.rn_desc = 1        AND app.rn_desc = 1        AND pc.in_time < app.log_time        THEN app.visit_ip        END    ) latest_visit_ip,--最近一次访问IP(不分APP与PC)    MAX(      CASE        WHEN pc.rn_desc = 1        AND app.rn_desc = 1        AND pc.in_time >= app.log_time        THEN pc.city        WHEN pc.rn_desc = 1        AND app.rn_desc = 1        AND pc.in_time < app.log_time        THEN app.city      END    ) latest_city,--最近一次访问城市(不分APP与PC)    MAX(      CASE        WHEN pc.rn_desc = 1        AND app.rn_desc = 1        AND pc.in_time >= app.log_time        THEN pc.province        WHEN pc.rn_desc = 1        AND app.rn_desc = 1        AND pc.in_time < app.log_time        THEN app.province      END    ) latest_province,--最近一次访问省份(不分APP与PC)    MAX(      CASE        WHEN pc.rn_asc = 1        THEN pc.in_time      END    ) first_pc_visit_date,--第一次PC端访问日期    MAX(      CASE        WHEN app.rn_asc = 1        THEN app.log_time      END    ) first_app_visit_date,--第一次APP端访问日期    MAX(      CASE        WHEN pc.rn_asc = 1        THEN pc.session_id      END    ) first_pc_visit_session,--第一次PC端访问的session    MAX(      CASE        WHEN pc.rn_asc = 1        THEN pc.cookie_id      END    ) first_pc_cookies,--第一次PC端访问的cookies    MAX(      CASE        WHEN pc.rn_asc = 1        THEN pc.pv      END) first_pc_pv,--第一次PC端访问的PV    MAX(      CASE        WHEN pc.rn_asc = 1        THEN pc.browser_name      END    ) first_pc_browser_name,--第一次PC端访问使用的游览器    MAX(      CASE        WHEN pc.rn_asc = 1        THEN pc.visit_os      END    ) first_pc_visit_os,--第一次PC端访问使用的操作系统    MAX(      CASE        WHEN app.rn_asc = 1        THEN app.app_name      END    ) first_app_name,--第一次APP端访问app名称    MAX(      CASE        WHEN app.rn_asc = 1        THEN app.visit_os      END    ) first_app_visit_os,--第一次APP端访问使用的操作系统    MAX(      CASE        WHEN pc.rn_asc = 1        AND app.rn_asc = 1        AND pc.in_time <= app.log_time        THEN pc.visit_ip        WHEN pc.rn_asc = 1        AND app.rn_asc = 1        AND pc.in_time > app.log_time        THEN app.visit_ip      END    ) first_visit_ip,--第一次访问IP(不分APP与PC)    MAX(      CASE        WHEN pc.rn_asc = 1        AND app.rn_asc = 1        AND pc.in_time <= app.log_time        THEN pc.city        WHEN pc.rn_asc = 1        AND app.rn_asc = 1        AND pc.in_time > app.log_time        THEN app.city      END    ) first_city,--第一次访问城市(不分APP与PC)    MAX(      CASE        WHEN pc.rn_asc = 1        AND app.rn_asc = 1        AND pc.in_time <= app.log_time        THEN pc.province        WHEN pc.rn_asc = 1        AND app.rn_asc = 1        AND pc.in_time > app.log_time        THEN app.province      END    ) first_province,--第一次访问省份(不分APP与PC)    SUM(      CASE        WHEN app.dat_7 = 1        THEN 1      END) day7_app_cnt,--近7天APP端访问次数    SUM(      CASE        WHEN app.dat_15 = 1        THEN 1      END) day15_app_cnt,--近15天APP端访问次数    SUM(      CASE        WHEN app.dat_30 = 1        THEN 1      END) month1_app_cnt,--近30天APP端访问次数    SUM(      CASE        WHEN app.dat_60 = 1        THEN 1      END) month2_app_cnt,--近60天APP端访问次数    SUM(      CASE        WHEN app.dat_90 = 1        THEN 1      END) month3_app_cnt,--近90天APP端访问次数    COUNT(      CASE        WHEN pc.dat_7 = 1        THEN pc.session_id      END    ) day7_pc_cnt,--近7天PC端访问次数    COUNT(      CASE        WHEN pc.dat_15 = 1        THEN pc.session_id      END    ) day15_pc_cnt,--近15天PC端访问次数    COUNT(      CASE        WHEN pc.dat_30 = 1        THEN pc.session_id      END    ) month1_pc_cnt,--近30天PC端访问次数    COUNT(      CASE        WHEN pc.dat_60 = 1        THEN pc.session_id      END    ) month2_pc_cnt,--近60天PC端访问次数    COUNT(      CASE        WHEN pc.dat_90 = 1        THEN pc.session_id      END    ) month3_pc_cnt,--近90天PC端访问次数    COUNT(DISTINCT substr(pc.in_time,0,10)) month1_pc_days,--近30天PC端访问天数    SUM(      CASE        WHEN pc.dat_30 = 1        THEN pc.pv      END) month1_pc_pv,--近30天PC端访问PV    SUM(      CASE        WHEN pc.dat_30 = 1        THEN pc.pv      END) / COUNT(DISTINCT substr(pc.in_time,0,10)) month1_pc_avg_pv,--近30天PC端访问平均PV    MAX(b.month1_pc_diff_ip_cnt),--近30天PC端访问不同ip数    MAX(b.month1_pc_diff_cookie_cnt),--近30天PC端访问不同的cookie数    MAX(b.month1_pc_common_ip),--近30天PC端访问最常用ip    MAX(b.month1_pc_common_cookie),--近30天PC端访问最常用的cookie    MAX(b.month1_pc_common_browser_name),--近30天PC端访问最常用游览器    MAX(b.month1_pc_common_os),--近30天PC端访问最常用的操作系统    COUNT(      CASE        WHEN pc.visit_hour >= 0        AND pc.visit_hour <= 5        THEN pc.session_id      END    ) month1_hour025_cnt,--近30天PC端0-5点访问次数    COUNT(      CASE        WHEN pc.visit_hour >= 6        AND pc.visit_hour <= 7        THEN pc.session_id      END    ) month1_hour627_cnt,--近30天PC端6-7点访问次数    COUNT(      CASE        WHEN pc.visit_hour >= 8        AND pc.visit_hour <= 9        THEN pc.session_id      END    ) month1_hour829_cnt,--近30天PC端8-9点访问次数    COUNT(      CASE        WHEN pc.visit_hour >= 10        AND pc.visit_hour <= 12        THEN pc.session_id      END    ) month1_hour10212_cnt,--近30天PC端10-12点访问次数    COUNT(      CASE        WHEN pc.visit_hour >= 13        AND pc.visit_hour <= 14        THEN pc.session_id      END    ) month1_hour13214_cnt,--近30天PC端13-14点访问次数    COUNT(      CASE        WHEN pc.visit_hour >= 15        AND pc.visit_hour <= 17        THEN pc.session_id      END    ) month1_hour15217_cnt,--近30天PC端15-17点访问次数    COUNT(      CASE        WHEN pc.visit_hour >= 18        AND pc.visit_hour <= 19        THEN pc.session_id      END    ) month1_hour18219_cnt,--近30天PC端18-19点访问次数    COUNT(      CASE        WHEN pc.visit_hour >= 20        AND pc.visit_hour <= 21        THEN pc.session_id      END    ) month1_hour20221_cnt,--近30天PC端20-21点访问次数    COUNT(      CASE        WHEN pc.visit_hour >= 22        AND pc.visit_hour <= 23        THEN pc.session_id      END    ) month1_hour22223_cnt,--近30天PC端22-23点访问次数    FROM_UNIXTIME(UNIX_TIMESTAMP()) dw_date  FROM    (SELECT      user_id    FROM      fdm.itcast_fdm_user_wide    WHERE dt = "2017-01-01") t    LEFT JOIN      (SELECT        a.*,        (          CASE            WHEN in_time >= DATE_SUB("2017-01-01", 6)            AND in_time <= "2017-01-01"            THEN 1          END        ) dat_7,        (          CASE            WHEN in_time >= DATE_SUB("2017-01-01", 14)            AND in_time <= "2017-01-01"            THEN 1          END        ) dat_15,        (          CASE            WHEN in_time >= DATE_SUB("2017-01-01", 29)            AND in_time <= "2017-01-01"            THEN 1          END        ) dat_30,        (          CASE            WHEN in_time >= DATE_SUB("2017-01-01", 59)            AND in_time <= "2017-01-01"            THEN 1          END        ) dat_60,        (          CASE            WHEN in_time >= DATE_SUB("2017-01-01", 89)            AND in_time <= "2017-01-01"            THEN 1          END        ) dat_90,        hour(in_time) visit_hour,        row_number () over (          distribute BY a.user_id sort BY a.in_time DESC        ) rn_desc,        row_number () over (          distribute BY a.user_id sort BY a.in_time ASC        ) rn_asc      FROM        fdm.itcast_fdm_user_pc_pageview a      WHERE in_time >= DATE_ADD("2017-01-01", -89)        AND in_time <= "2017-01-01") pc      ON (t.user_id = pc.user_id)    LEFT JOIN      (SELECT        user_id,        sum(          CASE            WHEN TYPE = "visit_ip"            THEN cnt          END        ) month1_pc_diff_ip_cnt,        MAX(          CASE            WHEN TYPE = "visit_ip" and rn= 1            THEN con          END        ) month1_pc_common_ip,        sum(          CASE            WHEN TYPE = "cookie_id"            THEN cnt          END        ) month1_pc_diff_cookie_cnt,        MAX(          CASE            WHEN TYPE = "cookie_id" and rn = 1            THEN con          END        ) month1_pc_common_cookie,        MAX(          CASE            WHEN TYPE = "browser_name" and rn = 1            THEN con          END        ) month1_pc_common_browser_name,        MAX(          CASE            WHEN TYPE = "visit_os" and rn = 1            THEN con          END        ) month1_pc_common_os      FROM        gdm.itcast_gdm_user_visit_temp_01      GROUP BY user_id) b      ON (t.user_id = b.user_id)    LEFT JOIN      (SELECT        a.*,        (          CASE            WHEN log_time >= DATE_SUB("2017-01-01", 6)            AND log_time <= "2017-01-01"            THEN 1          END        ) dat_7,        (          CASE            WHEN log_time >= DATE_SUB("2017-01-01", 14)            AND log_time <= "2017-01-01"            THEN 1          END        ) dat_15,        (          CASE            WHEN log_time >= DATE_SUB("2017-01-01", 29)            AND log_time <= "2017-01-01"            THEN 1          END        ) dat_30,        (          CASE            WHEN log_time >= DATE_SUB("2017-01-01", 59)            AND log_time <= "2017-01-01"            THEN 1          END        ) dat_60,        (          CASE            WHEN log_time >= DATE_SUB("2017-01-01", 89)            AND log_time <= "2017-01-01"            THEN 1          END        ) dat_90,        row_number () over (          distribute BY a.user_id sort BY a.log_time DESC        ) rn_desc,        row_number () over (          distribute BY a.user_id sort BY a.log_time ASC        ) rn_asc      FROM        fdm.itcast_fdm_user_app_pageview a   WHERE log_time >= DATE_ADD("2017-01-01", -89)        AND log_time <= "2017-01-01") app      ON (t.user_id = app.user_id)  GROUP BY t.user_id ;

拍摄稳定小白变大神斯莫格手机折叠框套件体验用手机记录生活中每时每刻的精彩瞬间,想拍摄出动人画质的佳作,装备是一定要有的,作为一名准视频博主,也没少配备拍照装备,咋买买买过后,终于发现一个比较实用的拍摄套装,为让大家少走弯路双11快递量激增,临时工日薪200,快递员月入过万11月1日,双十一拉开序幕,快递业务也迎来旺季。国家邮政局监测数据显示,11月1日全国共揽收快递包裹5。69亿件,同比增长28。54。业务量激增也让快递员出现缺口,日前,记者浏览各微软第一,何德何能?作者文雨编辑小市妹2010年,苹果市值首次超过微软,纽约时报发表评论称这是新时代的开始,也是旧时代的结束。现在,微软的市值再次反超苹果,是否可以认为这又是一个时代交替的转折点?我想乔布斯逝去十年苹果坠入凡间?乔布斯逝世的时间越久,我们便越能清楚地感受到,他所留下的和带走的分别是什么。如今,乔布斯已经逝去整整十年。十年后,他所创立和塑造的那家科技公司,早已是全球市值最高的企业。十年里,i推动农村电子商务建设实现乡村振兴乡村振兴作为一项国家战略,是全面的振兴发展,包括产业人才文化生态组织的全面振兴。把农村电子商务发展与乡村振兴结合起来,既能让农村电子商务发展壮大,也让乡村振兴充满无限希望。本文从国国产操作系统的鼻祖,曾登上中国空间站,蝉联10年行业第一文JING审核子扬校正知秋长期以来,缺芯少魂是阻碍我国科技产业发展的一大问题。但近两年,在半导体产业链企业共同努力下,我国缺芯问题已经得到有效缓解。同时,很多厂商也都开始铸魂,UO终于来啦CameraRaw14。0史诗级更新,全新界面,全新功能PS又又更新了PS更新到PS202122。5。1ACR升级到了14。0版AdobeCameraRaw是一款功能十分强大的RAW处理工具版本越新支持相机就越多功能越强这次14。0更新百元成本的远程方案,向日葵插座插排套装,让电脑更智能现在还有不加班的公司么?反正我公司经常加班,有时到了周末也经常带着工作回家做。两头干洗存在一个小问题,有时,需要用的数据或资料,忘记带上了,比如到家了发现,资料在公司电脑上到了公司国内又多了一家有自研芯片,自研操作系统的企业放眼全球,有自己的芯片,自己的操作系统的企业其实并不多。因为自研芯片难度不小,自研操作系统难度更大,同时具备这两种能力的企业,自然就是凤毛麟角了。从全球的巨头来看,苹果是其中最顶尖配了一台5900X3080Ti电脑,2021年11月(配置选择篇)笔者IT行业,过去20年从奔腾到酷睿,从ThinkPad到MacBookPro长期使用各种PC,近期工作和娱乐需要,DIY一台主流高配置的PC,此为背景。选择配置时查阅了大量帖子和人民日报的呼吁起效果了?腾讯正式宣布,事关芯片操作系统俗话说,科学技术是第一生产力。我国一向来就将这句话奉为真理。但是,当下很多互联网企业,为了能在如今激烈的竞争中存活,纷纷入局社区团购这样的低端科技,意图以蝇头微利,获取企业生存的资
酒店针孔摄像头可让百人在线观看能生成100个邀请码IT之家8月11日消息针孔摄像头可让百人在线观看登上微博热搜,据央视新闻报道,曾有警方破获的案例显示,有不法分子将针孔摄像头暗藏在酒店客房内,再通过分享App邀请码,使他人获得观看高颜值雪武战姬纯白主题,i711700K配RTX3070水冷主机方案熟悉DIY圈的小伙伴们应该对于两个不同的厂商联名推出旗下的产品应该不会陌生,毕竟DIY配件来来去去就是围绕DIY主机来发展的。重度MOD和轻度MOD完全是两个不同定义的范围的,重度苏神代言小米,雷军这波操作太秀了,米粉都有面子以往一提到小米的代言人,首先想到的都是王源刘昊然刘诗诗梁朝伟这些明星,又或者是小米CEO雷军自己化身代言人。而就在今天上午,小米官宣了一位新的代言人,居然不是演艺圈的明星,而是体育努比亚小黄人氮化镓充电器,颜值与实力并存,广泛兼容不同设备快充功能,解决了我们手机续航不足的问题,通过短时间即可给手机进行回血让其能够继续发挥它的战斗力对于一款充电,充电功率越大,体积越小,越会受到人们的追捧,如果说让你的充电器变更加呆萌iOS14。7正式版推送,只是改进和错误修复那么简单?近日,苹果官方向用户推送了iOS14。7正式版的最新系统,那么此次系统更新又将带来哪些变化呢?让我们一起来看看吧。据悉,此次版本更新包的大小在835M左右,更新后的版本号显示为182年前的iPhone11,相当于什么级别的安卓手机?深度解析给你答案如果非要用4个字来形容iPhone11,那就是经久不衰。iPhone12发布之前,iPhone11几乎每个月都能拿下手机销量榜第一的位置。iPhone12发布之后,iPhone11逆潮流的选择?学生装机应不应该选择薄膜键盘伴随着电竞的火爆,机械键盘也强势崛起,在很多人看来若是没有一把机械键盘似乎都很难称的上是一名合格的电竞游戏玩家。小狮子知道对很多想要在暑期装机的学生来说,他们的首选肯定是机械键盘,雷蛇RGB口罩定名RazerZephyr,外观设计改进IT之家8月7日消息雷蛇近日宣布了旗下的概念级口罩项目ProjectHazel新进展,该RGB口罩定名RazerZephyr,用户现可在雷蛇官网上注册成为Beta测试人员。雷蛇官方当口罩遇上信仰灯光RGB雷蛇正在寻找口罩测试者目前游戏知名外设品牌雷蛇,正在寻找其研发的RGB口罩Zephyr测试者,进一步改善产品。该款口罩防护性极强,被称为可穿戴空气净化器,最重要的是它还有信仰RGB灯光呀,SOCOOL!如何看待网络慢的问题,原因只是路由器?很多时候我们安装好宽带后使用并无异常,但随着时间越用越久就会发现网络速度变得越来越慢。或者您会觉得买个新款的路由器就可以解决这些问题,但老实讲,路由器可能只是一个很小的原因之一,更新爆料!华为手机5G之痛解决有望,国产厂商突破卡脖子元件上个月,受期待已久的华为P50问世,然而,由于美国方面所谓的制裁,P50系列将不再支持5G网络,用华为消费者业务CEO余承东的话说,现在华为只能5G芯片当4G用,这让很多华为系列的