在influxdb中measurement相当于mysql中的表,可以理解为一条一条记录都是存与measurent中的,一个数据库中可以有多个measurement,一个measurement中可以存很多的数据。虽然可将measurement类比为mysql中的表,但是他们之间的差别也挺明显的

首先我们先了解一下measurement的几个常用命令,如何查看、新增删除

1. show measurements

查看一个数据库中有哪些measurement,属于常规操作了

  • 先确定数据库
  • 执行show measurements 查看当前数据库的所有measurement
> use test
Using database test
> show measurements
name: measurements
name
----
yhh

我们也可以在不执行use databaseName的时候,进行查看;而且还支持按名进行匹配,语法为

SHOW MEASUREMENTS [ON <database_name>] [WITH MEASUREMENT <regular_expression>] [WHERE <tag_key> <operator> ['<tag_value>' | <regular_expression>]] [LIMIT_clause] [OFFSET_clause]

下面给出查询指定数据库中,以yhh开头的所有measurement示例

> show measurements on test
name: measurements
name
----
doraemon
doraemon2
yhh
yhh2
> show measurements on test with measurement =~ /yhh*/
name: measurements
name
----
yhh
yhh2

2. 创建measurement

在influxdb中没有专门用来创建measurement的命令,在执行向某个measurement新增记录的时候,如果不存在measurement,则会新创建一个

下面是一条简单的演示case

# 像userInfo中新增一条记录,如果userInfo这个measurement不存在,则新建一个
> insert userInfo,name=一灰灰blog userId=10,blog="https://blog.hhui.top/"
> show measurements
name: measurements
name
----
doraemon
doraemon2
userInfo
yhh
yhh2

3. 删除measurement

两种方式,一个是把measurement里面的所有数据都删完,那么这个measurement就没了

> select * from userInfo
name: userInfo
time blog name userId
---- ---- ---- ------
1563712849953792293 https://blog.hhui.top/ 一灰灰blog 10
# 删除userInfo中的记录
> delete from userInfo where time=1563712849953792293
# 再次查看,发现userInfo已经被删除
> show measurements
name: measurements
name
----
doraemon
doraemon2
yhh
yhh2
>

另外一种方式就是直接使用drop measurement命令实现删除

# 先创建userInfo
> insert userInfo,name=一灰灰blog userId=10,blog="https://blog.hhui.top/"
> show measurements
name: measurements
name
----
doraemon
doraemon2
userInfo
yhh
yhh2
# 直接使用drop语句删除
> drop measurement userInfo
> show measurements
name: measurements
name
----
doraemon
doraemon2
yhh
yhh2
>

4. 修改

不同于mysql中的表,measurement是没有修改操作的,从前面的创建操作也可以看出,对于measurement而言,也就只有一个名字,那如果我希望重命名现有的measurement,该怎么办?

原则上不建议这么干,如果确实有需要,可以用下面的方式来变相实现

> show measurements
name: measurements
name
----
doraemon
doraemon2
userInfo
yhh
yhh2
# 使用select into语句实现将查询结果保存到另外一个measurement中
> select * into userBaseInfo from userInfo
name: result
time written
---- -------
0 1
> show measurements
name: measurements
name
----
doraemon
doraemon2
userBaseInfo
userInfo
yhh
yhh2
> select * from userBaseInfo, userInfo
name: userBaseInfo
time blog name name_1 userId
---- ---- ---- ------ ------
1563713690876924095 https://blog.hhui.top/ 一灰灰blog 10 name: userInfo
time blog name name_1 userId
---- ---- ---- ------ ------
1563713690876924095 https://blog.hhui.top/ 一灰灰blog 10
>

II. 其他

0. 系列博文

参考博文

1. 一灰灰Bloghttps://liuyueyi.github.io/hexblog

一灰灰的个人博客,记录所有学习和工作中的博文,欢迎大家前去逛逛

2. 声明

尽信书则不如,已上内容,纯属一家之言,因个人能力有限,难免有疏漏和错误之处,如发现bug或者有更好的建议,欢迎批评指正,不吝感激

3. 扫描关注

一灰灰blog

Influx Sql系列教程三:measurement 表的更多相关文章

  1. Influx Sql系列教程九:query数据查询基本篇二

    前面一篇介绍了influxdb中基本的查询操作,在结尾处提到了如果我们希望对查询的结果进行分组,排序,分页时,应该怎么操作,接下来我们看一下上面几个场景的支持 在开始本文之前,建议先阅读上篇博文: 1 ...

  2. Influx Sql系列教程八:query数据查询基本篇

    前面几篇介绍了InfluxDB的添加,删除修改数据,接下来进入查询篇,掌握一定的SQL知识对于理解本篇博文有更好的帮助,下面在介绍查询的基础操作的同时,也会给出InfluxSql与SQL之间的一些差别 ...

  3. Influx Sql系列教程七:delete 删除数据

    前面介绍了使用insert实现新增和修改记录的使用姿势,接下来我们看一下另外一个简单的使用方式,如何删除数据 1. delete 语句 delete的官方语法如下 DELETE FROM <me ...

  4. Influx Sql系列教程六:insert 修改数据

    在influxdb中没有专门的修改数据的update语句,对于influxdb而言,如果想修改数据,还是得使用我们前面的说到的insert来实现,那么怎么判断一条insert语句是插入还是修改呢? 1 ...

  5. Influx Sql系列教程五:insert 添加数据

    接下来开始进入influxdb的curd篇,首先我们看一下如何添加数据,也就是insert的使用姿势 在进入本篇之前,对于不了解什么是retention policy, tag, field的同学,有 ...

  6. Influx Sql系列教程四:series/point/tag/field

    influxdb中的一条记录point,主要可以分为三类,必须存在的time(时间),string类型的tag,以及其他成员field:而series则是一个measurement中保存策略和tag集 ...

  7. Influx Sql系列教程二:retention policy 保存策略

    retention policy这个东西相比较于传统的关系型数据库(比如mysql)而言,是一个比较新的东西,在将表之前,有必要来看一下保存策略有什么用,以及可以怎么用 I. 基本操作 1. 创建re ...

  8. Influx Sql系列教程零:安装及influx-cli使用姿势介绍

    influxdb 时序数据库,因为实际业务中使用到了,然而并没有发现有特别好的文章,完整的介绍influx sql的使用姿势,因此记录下实际开发中学习的体会,主要参考来自于官方文档 Influx Qu ...

  9. CRL快速开发框架系列教程三(更新数据)

    本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...

随机推荐

  1. Ubuntu 14.04.2升级openssh7.9

    环境:Ubuntu 14.04.2 目的:openssh版本6.6升级为openssh7.9 准备以下3个包 http://www.zlib.net/ https://www.openssl.org/ ...

  2. kubectl kubernetes cheatsheet

    from : https://cheatsheet.dennyzhang.com/cheatsheet-kubernetes-a4 PDF Link: cheatsheet-kubernetes-A4 ...

  3. janusgraph-mgmt中的一些操作

    关闭事务 mgmt = graph.openManagement(); ids = mgmt.getOpenInstances(); for(String id : ids){if(!id.conta ...

  4. Apache Shiro<=1.2.4反序列化RCE漏洞

    介绍:Apache Shiro是一个强大且易用的Java安全框架,执行身份验证.授权.密码和会话管理. 漏洞原因:因为shiro对cookie里的rememberme字段进行了反序列化,所以如果知道了 ...

  5. P4848 崂山白花蛇草水

    题意:支持修改的矩形第 \(k\) 大. 题解:动态开点权值线段树 套 Kd-tree. 然后也没什么难的但就是写不对...调了两天才调出来然后发现跑的巨慢,于是又%了一发Claris'题解,跑的真快 ...

  6. php for循环遍历索引数组

    遍历二字,从字面解释就是一个接一个全读访问一次,显示出来. 因为for循环是一个单纯的计数型循环,而索引数组的下标为整型的数值.因此,我们可以通过for循环来遍历索引数组. 我们知道索引数组下标为整型 ...

  7. 【NOIP2014】真题回顾

    题目链接 生活大爆炸版石头剪刀布 就是个模拟,不说了 联合权值 枚举每个点,统计它任意两个儿子的联合权值,统计的时候维护sum和max就行了 飞扬的小鸟 比较好的DP题,不难想到用dp[i][j]表示 ...

  8. 群晖采用root用户登录

    在控制面板中开启 ssh 登录 通过有 管理员权限的用户登录 通过输入 sudo -i 或者 sudo su - , 然后输入当前用户密码, 进入 root 输入如下命令可以修改root 用户的密码 ...

  9. Linux系统学习(二)一Linux基本操作

    一.Linux的目录结构 1.1 Linux的目录结构图 1.2 目录内容 /:这就是根目录.对你的电脑来说,有且只有一个根目录.所有的东西,我是说所有的东西都是从这里开始.举个例子:当你在终端里输入 ...

  10. ListView中嵌入布局的Button或多个点击事件

    有时候在ListView嵌入的布局中有多个事件需要点击,比如一个item中有TextView和Button两个布局,当我们需要获取这两个点击事件时,我们应该如何去获取呢,通常来说,我们都是已经固定好了 ...