clickhouse sql记录

1、新增字段

 ALTER TABLE dws.表名字  ADD  COLUMN 字段名字  Nullable(Float32) DEFAULT NULL

2、修改字段名称

ALTER TABLE dws.表名字  RENAME COLUMN 旧名字  TO 新名字

优秀代码记录:
(1) 用户留存代码

with 
        14 as len, -101 as fill
        select
  
        arrayResize(arrayMap(x->x[2], arraySort(x->x, groupArray([period, impression/retention]))), len, fill) as days
from
        (
        select
                date, toInt16(period) as period, sum(impression) as impression,sum(retention) as retention,
                 sum(case when  period = '0' then cost else 0 end ) as cost, sum(case when  period = '0' then install_num else 0 end ) as install_num
        from
                dws.dws_overseas_new_users_data
        where
                date >= today()-8
                and country = 'US'
        group by
                date, period )
group by
        date

(2) 漏斗分析代码

SELECT media_source AS media_source, funnel_sort AS funnel_sort, count(1) AS total_count
FROM (SELECT media_source,
             arraySort(x ->
                           -x, groupArray(count)) AS funnel_sort
      FROM (SELECT media_source, level_index, count(1) AS count
            FROM (SELECT media_source,
                         user_id                           AS user_id,
                         arrayJoin(arrayEnumerate(levels)) AS level_index,
                         arrayWithConstant(level, 1)       AS levels
                  FROM (SELECT media_source,
                               user_id,
                               windowFunnel(86400)(parseDateTimeBestEffort(event_time), event_name = 'bf_enter_success',
                                            event_name = 'bf_ad_show', event_name = 'StayTimePerMinute',
                                            event_name = 'RewardVideoShowSuccess') AS level
                        FROM (SELECT date         AS date,
                                     country      AS country,
                                     app_name     AS app_name,
                                     app_version  AS app_version,
                                     media_source AS media_source,
                                     user_id      AS user_id,
                                     event_name   AS event_name,
                                     app_id       AS app_id,
                                     event_time   AS event_time
                              FROM ods.ods_appsflyer_event
                              WHERE 1 = 1
                                AND date BETWEEN '2020-10-01' AND '2020-10-18'
                                AND media_source in ('google', 'facebook', 'applovin', 'Apple Search Ads')
                                AND app_name like ('%%Build%%')
                                AND app_id = ('APAGQ4DANBZMYZTK')
                              LIMIT 100000 OFFSET 0)
                        WHERE 1 = 1
                        GROUP BY media_source, user_id)
                  WHERE 1 = 1)
            WHERE 1 = 1
            GROUP BY media_source, level_index)
      WHERE 1 = 1
      GROUP BY media_source
      LIMIT 1000 OFFSET 0)
WHERE 1 = 1
GROUP BY media_source, funnel_sort
SELECT media_source AS media_source, funnel_sort AS funnel_sort, count(1) AS total_count
FROM (SELECT media_source,
             arraySort(x ->-x, groupArray(count)) AS funnel_sort
      FROM (SELECT media_source, level_index, count(1) AS count
            FROM (SELECT media_source,
                         user_id                           AS user_id,
                         arrayJoin(arrayEnumerate(levels)) AS level_index,
                         arrayWithConstant(level, 1)       AS levels
                  FROM (SELECT media_source,
                               user_id,
                               windowFunnel(1468800)(parseDateTimeBestEffort(event_time),
                                            event_name = 'bf_enter_success', event_name = 'bf_ad_show',
                                            event_name = 'StayTimePerMinute',
                                            event_name = 'RewardVideoShowSuccess') AS level
                        FROM (SELECT date         AS date,
                                     country      AS country,
                                     app_name     AS app_name,
                                     app_version  AS app_version,
                                     media_source AS media_source,
                                     user_id      AS user_id,
                                     event_name   AS event_name,
                                     app_id       AS app_id,
                                     event_time   AS event_time
                              FROM ods.ods_appsflyer_event
                              WHERE 1 = 1
                                AND date BETWEEN '2020-10-01' AND '2020-10-18'
                                AND app_id = ('APAGQ4DANBZMYZTK'))
                        WHERE 1 = 1
                        GROUP BY media_source, user_id)
                  WHERE 1 = 1)
            WHERE 1 = 1
            GROUP BY media_source, level_index)
      WHERE 1 = 1
      GROUP BY media_source)
WHERE 1 = 1
GROUP BY media_source, funnel_sort




--unique_user+oneday--
SELECT media_source AS media_source, funnel_sort AS funnel_sort, count(1) AS total_count
FROM (SELECT media_source,
             arraySort(x ->
                           -x, groupArray(count)) AS funnel_sort
      FROM (SELECT media_source, level_index, count(1) AS count
            FROM (SELECT media_source,
                         user_id                           AS user_id,
                         arrayJoin(arrayEnumerate(levels)) AS level_index,
                         arrayWithConstant(level, 1)       AS levels
                  FROM (SELECT media_source,
                               user_id,
                               windowFunnel(86400)(parseDateTimeBestEffort(event_time), event_name = 'bf_enter_success',
                                            event_name = 'bf_ad_show', event_name = 'StayTimePerMinute',
                                            event_name = 'RewardVideoShowSuccess') AS level
                        FROM (SELECT date         AS date,
                                     country      AS country,
                                     app_name     AS app_name,
                                     app_version  AS app_version,
                                     media_source AS media_source,
                                     user_id      AS user_id,
                                     event_name   AS event_name,
                                     app_id       AS app_id,
                                     event_time   AS event_time
                              FROM ods.ods_appsflyer_event
                              WHERE 1 = 1
                                AND date BETWEEN '2020-10-01' AND '2020-10-18'
                                AND app_id = ('APAGQ4DANBZMYZTK'))
                        WHERE 1 = 1
                        GROUP BY media_source, user_id)
                  WHERE 1 = 1)
            WHERE 1 = 1
            GROUP BY media_source, level_index)
      WHERE 1 = 1
      GROUP BY media_source)
WHERE 1 = 1
GROUP BY media_source, funnel_sort
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 这是第一次数据分析的实践,选择了比较经典的淘宝用户行为数据集,考虑到这个数据集比较大,能够了解一下各种程序对几个G...
    pobabyq阅读 5,139评论 0 2
  • 一、数据埋点是什么 数据埋点是数据产品经理、数据运营以及数据分析师,基于业务需求(例如:CPC点击付费广告中统计每...
    嗯哼嗯阅读 26,053评论 0 51
  • 目录:1、项目背景2、数据导入与认识3、数据清洗4、数据分析5、结论与建议 一、项目背景 移动互联网企业从粗放式到...
    jinghenggl阅读 4,392评论 0 17
  • https://www.cnblogs.com/vame1/p/5776808.html 比方说在查询id是50的...
    小浪崇礼阅读 2,607评论 0 0
  • sql 注入 1.盲注 (没有回显)2.显错注入3.报错注入 显错注入-联合查询(Mysql数据库)的基本流程 显...
    Caeser_CC阅读 3,237评论 0 2