InfluxDB-limit

一、LIMIT子句

LIMIT 子句,返回查询结果的前N条points。

语法:

SELECT_clause [INTO_clause] FROM_clause [WHERE_clause]
[GROUP_BY_clause] [ORDER_BY_clause]
LIMIT <N>

LIMIT示例sql


二、SLIMIT子句

SLIMIT 返回指定measurement的前N个series的所有point。

有一个持续的问题是,需要SLIMIT查询中包含group by*。请注意,SLIMIT子句必须按上述语法中列出的顺序出现。

SLIMIT示例sql

  1. 示例1

    上面sql查询h2o_feet表中1个series的所有point的water_level。

  2. 示例2
SELECT MEAN("water_level") FROM "h2o_feet"
WHERE time >= '2015-08-18T00:00:00Z'
    AND time <= '2015-08-18T00:42:00Z'
GROUP BY *,time(12m)
SLIMIT 1

查询结果:


三、LIMIT and SLIMIT

当LIMIT 和SLIMIT 一起使用时,表示的意思是查询指定measurement前N个series的前N个point。英文原文如下:LIMIT followed by SLIMIT returns the first points from series in the specified measurement。它指的是说返回的前N个series中,每个series的前N个points。下面将给出示例sql。

语法:

SELECT_clause [INTO_clause] FROM_clause [WHERE_clause]
GROUP BY *[,time(<time_interval>)] [ORDER_BY_clause]
LIMIT <N1> SLIMIT <N2>
  • N1指定了从measurement中查询的points的数量。
  • N2指定了从measurement中查询的series的数量。

存在一个持续的问题是,在使用LIMIT和SLIMIT来进行查询时,sql中必须包含group by*。注意,LIMIT和SLIMIT子句必须按上述语法中列出的顺序出现。

LIMIT和SLIMIT示例sql

  1. 示例1

  2. 示例2
    Sql
SELECT MEAN("water_level") FROM "h2o_feet"
WHERE time >= '2015-08-18T00:00:00Z'
    AND time <= '2015-08-18T00:42:00Z'
GROUP BY *,time(12m)
LIMIT 3 SLIMIT 2

查询结果:

由查询结果可知,查询返回2个series,每个series返回3个points。为了证明LIMIT 3 SLIMIT 2指的是返回前2个series中,每个series的前3个points。我们执行下面的sql,看每个series有多少个point

SELECT MEAN("water_level") FROM "h2o_feet"
WHERE time >= '2015-08-18T00:00:00Z'
    AND time <= '2015-08-18T00:42:00Z'
GROUP BY *,time(12m)
SLIMIT 2

查询结果:

可见每个series有4个point。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值