一、基本资料

1、官方文档

https://prestodb.github.io/docs/current/sql/select.html

二、常用命令

1、kill任务,登录presto客户端

CALL system.runtime.kill_query(query_id => '20220317_083239_04518_ik27u', message => 'Using too many resources');

2、日期函数

--前7天
select date_format(date_add('day', -7, CURRENT_DATE), '%Y%m%d')
--前1天
select format_datetime(date_add('day', -1, CURRENT_DATE), 'yyyyMMdd')
--获取前一个小时
select date_format(current_timestamp - interval '1' hour,'%H')
--日期转data
select from_unixtime(unix_timestamp('20220324','yyyyMMdd'),'yyyy-MM-dd') as dt
--日期转周
select weekofyear('2022-03-24') as dt

3、字符串处理

--字符串截取
select substring('20220324',0,4) as dt
--字符串拼接
select concat('a','b') as str

4、分区操作

--查看分区
show partitions bdg_inf.table1
--删除分区
alter table bdg_inf.table1 drop partition(dt=20241122);

三、分析Sql

1、提取出filter.conditions数组中,field字段内容,并且只展示.之后的字符串[app_version、page_version]

数据内容:

{
"filter": {
"conditions": [{
"field": "event.app_version",
"function": "equal",
"params": ["", "4.99.20", "6.2.0.0.1"]
}, {
"field": "event.page_version",
"function": "equal",
"params": ["", "14.1"]
}],
"relation": "or"
},
"gid": "compass",
"t": "m3r2sww2"
}

执行sql:

select field_last,count(1) as request_num from (
SELECT
json_extract_scalar(c.value, '$.field') AS field
,regexp_extract(json_extract_scalar(c.value, '$.field'), '.*\.(.*)', 1) AS field_last
FROM
table
CROSS JOIN
UNNEST(CAST(json_extract(params, '$.filter.conditions') AS ARRAY<JSON>)) AS c (value)
WHERE
dt>= '20241021' and dt<= '20241121'
AND event_id = '777'
AND page_url in ('/eventAnalysis')
AND json_format(json_extract(params, '$.filter')) <> '{}'
-- AND md5_log='12222222'
)
group by field_last

Presto常用命令的更多相关文章

  1. Presto 常用配置及操作

    一.介绍 Presto是一个开源的分布式SQL查询引擎,适用于交互式分析查询,数据量支持GB到PB字节. Presto的设计和编写完全是为了解决像Facebook这样规模的商业数据仓库的交互式分析和处 ...

  2. Linux 常用命令(持续补充)

    常用命令: command &:将进程放在后台执行 ctrl + z:暂停当前进程 并放入后台 jobs:查看当前后台任务 bg( %id):将任务转为后台执行 fg( %id):将任务调回前 ...

  3. LVM基本介绍与常用命令

    一.LVM介绍LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制LVM - 优点:LVM通常用于装备大量磁盘的系统,但它同样适 ...

  4. Linux学习笔记(一):常用命令

    经过统计Linux中能够识别的命令超过3000种,当然常用的命令就远远没有这么多了,按照我的习惯,我把已经学过的Linux常用命令做了以下几个方面的分割: 1.文件处理命令 2.文件搜索命令 3.帮助 ...

  5. git常用命令(持续更新中)

    git常用命令(持续更新中) 本地仓库操作git int                                 初始化本地仓库git add .                       ...

  6. 【原】npm 常用命令详解

    今年上半年在学习gulp的使用,对npm的掌握是必不可少的,经常到npm官网查询文档让我感到不爽,还不如整理了一些常用的命令到自己博客上,于是根据自己的理解简单翻译过来,终于有点输出,想学习npm这块 ...

  7. npm常用命令

    npm常用命令 环境:win7 npm 是什么 NPM(node package manager),通常称为node包管理器.顾名思义,它的主要功能就是管理node包,包括:安装.卸载.更新.查看.搜 ...

  8. Git 常用命令

    一.初始環境配置 git config --global user.name "John Doe"git config --global user.email johndoe@ex ...

  9. linux iptables常用命令之配置生产环境iptables及优化

    在了解iptables的详细原理之前,我们先来看下如何使用iptables,以终为始,有可能会让你对iptables了解更深 所以接下来我们以配置一个生产环境下的iptables为例来讲讲它的常用命令 ...

  10. Linux常用命令(一)

    Linux常用命令 1. pwd查看当前路径(Print Working Directory)    [root@CentOS ~]# pwd/root 2. cd .. 返回上一级 .. 表示上一级 ...

随机推荐

  1. Golang之常用方法[总结]

    1. 有一堆数字,如果除了一个数字以外,其他数字都出现了两次,那么如何找到出现一次的数字? nums := []int{1, 5, 1, 6, 5, 3, 6} i := 0 for _, v := ...

  2. Windows系统下PhpStorm+Xdebug安装与调试

    环境说明: 系统:Windows10 PhpStorm:2019.3.2 PHP版本:7.3.21 Xdebug版本 :2.7.2 一.Xdebug介绍 官网地址:https://xdebug.org ...

  3. 解决GitHub无法访问问题

    作为开发者,经常使用借助GitHub进行开发,但是最近一直无法访问github.com站点,决定搞一下!!! 由于国内某些原因,导致我们有时候不能访问到 www.github.com.此时我们必须找到 ...

  4. 2021GPLT

    病毒溯源 给定一棵树,树上有\(n\)个节点,编号从\(0\)到\(n-1\),请你输出从根节点开始的最长的一条链,且该链字典序最小 题解:\(dfs\)树的遍历 + 贪心 首先我们先找到入度为\(0 ...

  5. Node.js Express 框架(1)

    1.Express介绍 Express 是一个简洁而灵活的 node.js Web应用框架, 提供了一系列强大特性帮助你创建各种 Web 应用,和丰富的 HTTP 工具. Express的特点: 实现 ...

  6. 【处理元组有关的题型的技巧】codeforces 1677 A. Tokitsukaze and Strange Inequality

    题意 第一行输入一个正整数 \(T(1 \leq T \leq 1000)\),代表共有 \(T\) 组测试用例,对于每组测试用例: 第一行输入一个正整数 \(n(4 \leq n \leq 5000 ...

  7. 数据万象盲水印 - AIGC的“保护伞”

    导语 近期AIGC的爆火让人们觉得AI似乎无所不能,打工人们已然将 AI 发展成了工作的一大助手,但同样也伴随着很多AI的受害者.一些专家.画家.学者们发现自己的"作品风格"正在被 ...

  8. AlertManager警报通知 使用webhook 钉钉机器人

    # AlertManager警报通知 使用webhook 钉钉机器人 #启动钉钉webhook服务 #dingtalk webhook docker rm -f dingtalk docker run ...

  9. LocalLLaMA 客户端试验

    LM Studio. 可以直接下 hg 模型(实际使用需要自己修改成中国镜像). 有 local server, 符合 openai api 规范. 遗憾的是不支持选择显卡导致无法使用. Farada ...

  10. 在 d2js 使用多种数据源如spring数据源

    不少人误以为 d2js 只能通过 database.js 指定一个数据库,是一个单数据库方案.实际上 d2js 也可以使用多个数据库. 在 WEB-INF/jslib/d2js/base.js 的末尾 ...