度娘教我influxdb,先搞一波在补理论

news2024/12/28 5:50:10

InfluxDb中的数据查询语法where子句

公司用的时序性数据库是influxdb,但是确实接触有点少。
心里话: 就是没接触过,度娘教教我。。。。
我咋回呢,现学吧,都是数据库,天下乌鸦一般黑

然后就哟了以下:
本节讲解where子句,注意,查询语言是大小写无关的哈。


1、influxdb的where语法

SELECT_clause FROM_clause WHERE <conditional_expression> [(AND|OR) <conditional_expression> […]]

  • 可以有多个条件表达式conditional_expression
  • 条件表达式之间可以有AND和OR

2、语法描述

WHERE子句后可以写写field,tag和timestamp。

conditional_expressions.


3、where 子句中包含fields时

where子句语法:

field_key [‘string’ | boolean | float | integer]

WHERE子句支持field value是字符串,布尔型,浮点数和整数这些类型。

WHERE子句中单引号来表示字符串字段值。不加引号或者用双引号,不会返回结果,也不会返回错误。

支持的操作符operator如下:

  • = 等于
  • <> 不等于
  • != 不等于
  • > 大于
  • >= 大于等于
  • < 小于
  • <= 小于等于

4、where 子句中包含tags时

tag_key [‘tag_value’]

WHERE子句中的用单引号来把tag value引起来。具不加引号或者用双引号,不会返回结果,也不会返回错误。

支持的操作符:

  • = 等于
  • <> 不等于
  • != 不等于

5、timestamps

对于大多数SELECT语句,默认时间范围为UTC的1677-09-21 00:12:43.1452241942262-04-11T23:47:16.854775806Z。 对于只有GROUP BY time()子句的SELECT语句,默认时间范围在UTC的1677-09-21 00:12:43.145224194now()之间。


6、Where语句的例子


6.1 例一:查询有特定field的key value的数据

use NOAA_water_database
SELECT * FROM “h2o_feet” WHERE “water_level” > 8
name: h2o_feet
--------------
time level description location water_level
2015-08-18T00:00:00Z between 6 and 9 feet coyote_creek 8.12
2015-08-18T00:06:00Z between 6 and 9 feet coyote_creek 8.005
[…]
2015-09-18T00:12:00Z between 6 and 9 feet coyote_creek 8.189
2015-09-18T00:18:00Z between 6 and 9 feet coyote_creek 8.084

这个查询将会返回measurement为h2o_feet,字段water_level的值大于8的数据。


6.2 例二:查询有特定field的key value为字符串的数据

SELECT * FROM “h2o_feet” WHERE “level description” = ‘below 3 feet’
name: h2o_feet
--------------
time level description location water_level
2015-08-18T00:00:00Z below 3 feet santa_monica 2.064
2015-08-18T00:06:00Z below 3 feet santa_monica 2.116
[…]
2015-09-18T14:06:00Z below 3 feet santa_monica 2.999
2015-09-18T14:36:00Z below 3 feet santa_monica 2.907

运行例子

该查询从h2o_feet返回数据,其中level description等于below 3 feet。InfluxQL在WHERE子句中需要单引号来将字符串field value引起来。

field value用双引号是一种错误哦,不会返回数据哦:

influx-where


6.3 例三:查询有特定field的key value并且带计算的数据

> SELECT * FROM “h2o_feet” WHERE “water_level” + 2 > 11.9
name: h2o_feet
--------------
time level description location water_level
2015-08-29T07:06:00Z at or greater than 9 feet coyote_creek 9.902
2015-08-29T07:12:00Z at or greater than 9 feet coyote_creek 9.938
2015-08-29T07:18:00Z at or greater than 9 feet coyote_creek 9.957
2015-08-29T07:24:00Z at or greater than 9 feet coyote_creek 9.964
2015-08-29T07:30:00Z at or greater than 9 feet coyote_creek 9.954
2015-08-29T07:36:00Z at or greater than 9 feet coyote_creek 9.941
2015-08-29T07:42:00Z at or greater than 9 feet coyote_creek 9.925
2015-08-29T07:48:00Z at or greater than 9 feet coyote_creek 9.902
2015-09-02T23:30:00Z at or greater than 9 feet coyote_creek 9.902

运行例子

该查询从h2o_feet返回数据,其字段值为water_level加上2大于11.9。


6.4 例四:查询有特定tag的key value的数据

SELECT “water_level” FROM “h2o_feet” WHERE “location” = ‘santa_monica’
name: h2o_feet
--------------
time water_level
2015-08-18T00:00:00Z 2.064
2015-08-18T00:06:00Z 2.116
[…]
2015-09-18T21:36:00Z 5.066
2015-09-18T21:42:00Z 4.938

该查询从h2o_feet返回数据,其中tag locationsanta_monica。InfluxQL需要WHERE子句中tag的过滤带单引号。

注意:时间无论你指定没有,都是会显示的。


6.5 例五:查询有特定tag的key value以及特定field的key value的数据

SELECT “water_level” FROM “h2o_feet” WHERE “location” <> ‘santa_monica’ AND (water_level < -0.59 OR water_level > 9.95)
name: h2o_feet
--------------
time water_level
2015-08-29T07:18:00Z 9.957
2015-08-29T07:24:00Z 9.964
2015-08-29T07:30:00Z 9.954
2015-08-29T14:30:00Z -0.61
2015-08-29T14:36:00Z -0.591
2015-08-30T15:18:00Z -0.594

该查询从h2o_feet中返回数据,其中tag location设置为santa_monica,并且field water_level的值小于-0.59或大于9.95。 WHERE子句支持运算符ANDOR,并支持用括号分隔逻辑。


6.6 例六:根据时间戳来过滤数据

SELECT * FROM “h2o_feet” WHERE time > now() - 7d

该查询返回来自h2o_feet,该measurement在过去七天内的数据。

你也许什么也查不出来,因为数据库的时间远远大于7天。减去500d,可能会有值。


7、WHERE子句常见的问题


7.1 问题一:WHERE子句返回结果为空

在大多数情况下,这个问题是tag value或field value缺少单引号的结果。具有无引号或双引号tag value或field value的查询将不会返回任何数据,并且在大多数情况下不会返回错误。

下面的代码块中的前两个查询尝试指定tag value为santa_monica,没有任何引号和双引号。那些查询不会返回结果。 第三个查询单引号santa_monica(这是支持的语法),并返回预期的结果。

SELECT “water_level” FROM “h2o_feet” WHERE “location” = santa_monica
> SELECT “water_level” FROM “h2o_feet” WHERE “location” = “santa_monica”
> SELECT “water_level” FROM “h2o_feet” WHERE “location” = ‘santa_monica’
name: h2o_feet
--------------
time water_level
2015-08-18T00:00:00Z 2.064
[…]
2015-09-18T21:42:00Z 4.938

下面的代码块中的前两个查询尝试指定field字符串为at or greater than 9 feet,没有任何引号和双引号。第一个查询返回错误,因为field字符串包含空格。 第二个查询不返回结果。 第三个查询单引号at or greater than 9 feet(这是支持的语法),并返回预期结果。

> SELECT “level description” FROM “h2o_feet” WHERE “level description” = at or greater than 9 feet
ERR: error parsing query: found than, expected ; at line 1, char 86
> SELECT “level description” FROM “h2o_feet” WHERE “level description” = “at or greater than 9 feet”
> SELECT “level description” FROM “h2o_feet” WHERE “level description” = ‘at or greater than 9 feet’
name: h2o_feet
--------------
time level description
2015-08-26T04:00:00Z at or greater than 9 feet
[…]
2015-09-15T22:42:00Z at or greater than 9 feet

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/536886.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Mac 更换.gradle文件目录

用mac开发最大滑铁卢居然是存储空间不足......于是加了一个外置的存储器。于是需要把android开发中最大的一个缓存目录移到外置存储器... 一开始对android studio的进行了如下设置 于是乎...Mac用户下的.gradle全删了...这个时候用android studio打包运行都没问题了。 如果你…

AI在视频教学方面会有哪些有意思应用?

阿酷TONY / 原创 / 2023-5-17 / 长沙 来&#xff0c;我们一起来探索未来式的学习体验&#xff0c;AI视频&#xff0c;AI与视频的应用将为你带来前所未有的教学体验。AI在视频教学方面的应用&#xff0c;主要会体现在如下几个方面&#xff1a; 1. AI 课程知识点梳理 2. AI 学…

前段时间公司招人,面了一个要23K的,一问自动化只会点皮毛···

前段时间公司要招2个自动化测试&#xff0c;同事面了几十个候选人&#xff0c;发现了一个很奇怪的现象&#xff0c;面试的时候&#xff0c;如果问的是框架api、脚本编写这些问题&#xff0c;基本上个个都能对答如流&#xff0c;等问到实际项目的时候&#xff0c;类似“怎么从0开…

OPPO关停哲库业务,工程师造芯何去何从?

5月12日&#xff08;上周五&#xff09;&#xff0c;新浪科技从OPPO处了解到&#xff0c;OPPO将终止ZEKU业务。3000多人团队突然原地解散&#xff0c;网上唏嘘声一片&#xff01; ZEKU最初成立于2019年&#xff0c;是OPPO的全资子公司&#xff0c;欧加集团百分之百注资成立。总…

提高合规性与安全性:ADAudit Plus助力企业数据审计

简介&#xff1a;在现代数字化时代&#xff0c;企业面临着日益增长的数据安全威胁和法规合规要求。为了应对这些挑战&#xff0c;企业需要强大的数据审计解决方案来监控和保护其敏感数据。ADAudit Plus是一款功能强大的工具&#xff0c;旨在帮助企业提高合规性&#xff0c;并提…

dll注入技术

一、dll注入的概念 当一个进程运行时&#xff0c;它会加载并使用一些动态链接库&#xff08;DLL&#xff09;来提供额外的功能和资源。这些DLL可以被多个进程共享&#xff0c;使得代码重用和资源共享变得更加高效。DLL注入技术利用了这种共享机制。它允许向正在运行的进程中注…

厦大凭什么和清北复一起入选首批国家集成电路产教融合创新平台?对台区位优势吗

最近&#xff0c;有网友提出这样一个问题&#xff0c;众所周知&#xff0c;中国集成电路研究主要集中在北京和上海&#xff0c;清北可以和北京合作&#xff0c;复旦可以和上海合作&#xff0c;那么厦大和谁合作&#xff0c;厦大又凭什么和清北复一起入选了首批国家集成电路产教…

RecyclerView 分层级展示(抽屉) TreeView

先看效果 难点: 数据层级的划分;理清楚层级关系, 剩下的就简单明了了; 1. 第一步 new Adapter, and setAdapter; (不需要setLayoutManager, Adapter里有set); mAdapter new TreeViewAdapter(getContext(),mRecyclerView); mRecyclerView.setAdapter(mAdapter); 2. 第二步, …

素雅的登录界面,简单而优雅

先上效果图&#xff1a; 再上代码&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title><style>*, *::after, *::before {margin: 0;padding: 0;box-sizing: bord…

本地服务器与云服务器哪个好?

本地服务器和云服务器是企业可以使用的两种不同的服务器设置。主要区别在于本地服务器托管&#xff0c;第三方提供商托管云服务器。那么&#xff0c;本地服务器和云服务器哪个更好呢&#xff1f; 接下来&#xff0c;将带大家讨论本地服务器和云服务器的优缺点&#xff0c;并帮…

Golang笔记:使用embed包将静态资源嵌入到程序中

文章目录 目的使用演示//go:embed 指令在WebServer中应用总结 目的 Golang编译程序默认是静态编译&#xff0c;会把相关的库都打包到一起&#xff0c;这在分发部署使用时非常方便。不过如果项目中用到的外部的静态资源文件&#xff0c;通常就需要将这些资源和程序一起拷贝分发…

软件测试面试大全(涵盖了软件测试的全部核心技术点),应对技术面妥妥的

软件测试面试题&#xff1a;项目 1、简单介绍下最近做过的项目 根据自己的项目整理完成&#xff0c;要点&#xff1a; 1&#xff09;项目背景、业务、需求、核心业务的流程 2&#xff09;项目架构&#xff0c;B/S 还是 C/5&#xff0c;数据库用的什么? 中间件用的什么&…

[开源工具] [Unity实战]Jenkins如何配置拉取Git/Jenkins使用Unity一键打包[windows][android]

[开源工具]Jenkins如何配置拉取Git/Jenkins使用Unity一键打包[windows][android] 1.背景介绍1.1Jenkins是什么?1.2用JenkinsUnity的好处? 2.Jenkins安装&使用2.1Java112.2 下载jenkins.war(我用tomcat所以需要,可以用jenkins安装版本)2.3 使用Tomcat92.4将tomcat9解压后,…

1.高级面试-MySQL、Redis、特殊场景、Java

本文目录如下&#xff1a; 高级面试一、MySQLB树有什么优点&#xff1f; image.pngInnoDB 和 MyISAM 的索引结构有什么区别 (聚簇索引-非聚簇索引)&#xff1f; 二、RedisRedis 如何保证存储的都是 热点数据&#xff1f;大量 key 为同一过期时间怎么办&#xff1f;缓存一致性的…

TS构建微信小程序后使用vant weapp框架配置

1.npm 安装 # 通过 npm 安装 npm i vant/weapp -S --production 2.配置app.json 将 app.json 中的 "style": "v2" 去除&#xff0c;小程序的新版基础组件强行加上了许多样式&#xff0c;难以覆盖&#xff0c;不关闭将造成部分组件样式混乱。 3.修改 pr…

ubuntu20 kvm显卡直通实验-a4000

一、环境&#xff1a; 显卡&#xff1a;NVIDIA RTX A4000 系统&#xff1a;Ubuntu20.04 CPU&#xff1a;intel二、安装kvm sudo apt install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virtinst virt-manager ovmf添加用户到“libvirt”和“kvm”组 s…

个人简历上的照片有什么要求?这些基本要求要知道

简历对我们来说非常重要&#xff0c;因为它可以帮助我们展示我们的工作经验、技能和教育背景&#xff0c;从而让面试者更好地了解我们的能力和合适程度。简历通常是我们与公司之间的第一次接触&#xff0c;因此它应该清晰、简洁和易于阅读&#xff0c;以便引起面试者的兴趣&…

【机械硬盘重新挂载】

一、背景描述 目前机器上有一个6.5T的机械硬盘&#xff0c;挂在为/home目录&#xff0c;但是目前处于公司业务需要&#xff0c;需要将机械硬盘重新挂载为/data&#xff0c;但是/home与/data中都有业务数据&#xff0c;需要我们谨慎操作。 二、概念解析 挂载源&#xff1a;要…

机器学习项目实战-能源利用率 Part-1(数据清洗)

1. 项目背景 2009年的《当地法案84号》&#xff0c;或纽约市基准法案&#xff0c;要求对能源和用水量进行年度基准测试和披露信息。被覆盖的财产包括单个建筑物的税收地块&#xff0c;其总建筑面积大于50,000平方英尺&#xff08;平方英尺&#xff09;&#xff0c;以及具有超过…

CISP-PTE认证是什么?含金量有多高?

CISP即“注册信息安全专业人员”&#xff0c;由中国信息安全测评中心根据中央编办授权&#xff0c;系国家对信息安全人员资质的最高认可。那么&#xff0c;CISP-PTE认证又是什么呢&#xff1f;它的含金量又有多高&#xff1f;下面&#xff0c;国科科技就为你介绍。 CISP-PTE是…