嵌套子查询是指将一个SELECT语句嵌套在另一个SELECT语句中。针对复杂的分析场景,您可以使用嵌套子查询。
基本语法
使用嵌套子查询时,需在SELECT语句中指定FROM子句。
* | SELECT key FROM (sub_query)
注意
- 子查询语句需被包裹在半角圆括号
()
中。 - 在子查询语句中,需指定关键字
FROM log
,表示在当前Logstore中执行SQL分析。
示例
示例1
计算各个请求方法对应的请求数量,然后获取最小的请求数量。
- 查询和分析语句
* | SELECT min(PV) FROM ( SELECT count(1) as PV FROM log GROUP BY request_method )
- 查询和分析结果
示例2
计算当前1小时和昨天同时段的网站访问量比值。其中,选择查询和分析的时间范围为1小时(整点时间),86400表示当前时间减去86400秒(1天),log表示Logstore名称。
- 查询和分析语句
* | SELECT diff [1] AS today, diff [2] AS yesterday, diff [3] AS ratio FROM ( SELECT compare(PV, 86400) AS diff FROM ( SELECT count(*) AS PV FROM log ) )
- 查询和分析结果
- 3337.0表示当前1小时(例如2020-12-25 14:00:00~2020-12-25 15:00:00)的网站访问量。
- 3522.0表示昨天同时段(例如2020-12-24 14:00:00~2020-12-24 15:00:00)的网站访问量。
- 0.947473026689381表示当前1小时与昨天同时段的网站访问量比值。
示例3
统计各个访问页面的访问次数及占比。
- 查询和分析语句
* | SELECT request_uri AS "访问页面", c AS "次数", round(c * 100.0 /(sum(c) over()), 2) AS "百分比%" FROM ( SELECT request_uri AS request_uri, count(*) AS c FROM log GROUP BY request_uri ORDER BY c DESC )
- 查询和分析结果
内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家
阿里云企业补贴进行中: 马上申请
腾讯云限时活动1折起,即将结束: 马上收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠
转转请注明出处:https://www.yunxiaoer.com/164115.html