一灰灰blog 一灰灰blog
首页
  • InfluxDB
  • MongoDB
  • MySql
  • 基础系列
  • DB系列
  • 搜索系列
  • MQ系列
  • WEB系列
  • 中间件
  • 运维
  • SpringSecurity
  • SpringCloud
  • QuickAlarm
  • QuickCrawer
  • QuickFix
  • QuickMedia
  • QuickSpi
  • QuickTask
  • 高可用
  • 分类
  • 标签
  • 归档
  • 收藏
  • 关于
GitHub (opens new window)

一灰灰blog

资深搬运工
首页
  • InfluxDB
  • MongoDB
  • MySql
  • 基础系列
  • DB系列
  • 搜索系列
  • MQ系列
  • WEB系列
  • 中间件
  • 运维
  • SpringSecurity
  • SpringCloud
  • QuickAlarm
  • QuickCrawer
  • QuickFix
  • QuickMedia
  • QuickSpi
  • QuickTask
  • 高可用
  • 分类
  • 标签
  • 归档
  • 收藏
  • 关于
GitHub (opens new window)
  • InfluxDB

    • v1.6.0安装和简单使用小结
    • InfluxDB基本概念小结
    • 时序数据库InfluxDB之备份和恢复策略
    • InfluxDB之权限管理
    • InfluxDB之配置修改
    • InfluxDb之时间戳显示为日期格式
    • Influx Sql系列教程零:安装及influx-cli使用姿势介绍
    • Influx Sql系列教程一:database 数据库
    • Influx Sql系列教程二:retention policy 保存策略
    • Influx Sql系列教程三:measurement 表
    • Influx Sql系列教程四:series/point/tag/field
    • Influx Sql系列教程五:insert 添加数据
      • I. Insert 使用说明
        • 1. 基本写数据姿势
        • 2. 指定保存策略插入数据
      • II. 其他
        • 0. 系列博文
        • 1. 一灰灰Blog: https://liuyueyi.github.io/hexblog
        • 2. 声明
        • 3. 扫描关注
    • Influx Sql系列教程六:insert 修改数据
    • Influx Sql系列教程七:delete 删除数据
    • Influx Sql系列教程八:query数据查询基本篇
    • Influx Sql系列教程九:query数据查询基本篇二
    • Influx Sql系列教程十:query数据查询基本篇三
  • MongoDB

  • MySql

  • 数据库
  • InfluxDB
一灰灰
2019-07-26

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

接下来开始进入influxdb的curd篇,首先我们看一下如何添加数据,也就是insert的使用姿势

在进入本篇之前,对于不了解什么是retention policy, tag, field的同学,有必要快速过一下这几个基本概念,可以参考文后的系列教程

# I. Insert 使用说明

基本语法

insert into <retention policy> measurement,tagKey=tagValue fieldKey=fieldValue timestamp
1

# 1. 基本写数据姿势

当measurement不存在的时候,我们插入一条数据时,就会创建这个measurement

# a. 基本case

下面给出一个简单的实例

  • insert add_test,name=YiHui,phone=110 user_id=20,email="bangzewu@126.com"
  • 新增一条数据,measurement为add_test, tag为name,phone, field为user_id,email
> show measurements
name: measurements
name
----
yhh
> insert add_test,name=YiHui,phone=110 user_id=20,email="bangzewu@126.com"
> show measurements;
name: measurements
name
----
add_test
yhh
> select * from add_test
name: add_test
time                email            name  phone user_id
----                -----            ----  ----- -------
1564149327925320596 bangzewu@126.com YiHui 110   20
> show tag keys from add_test;
name: add_test
tagKey
------
name
phone
> show field keys from add_test;
name: add_test
fieldKey fieldType
-------- ---------
email    string
user_id  float
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29

从上面的输出,简单小结一下插入的语句写法

  • insert + measurement + "," + tag=value,tag=value + + field=value,field=value
  • tag与tag之间用逗号分隔;field与field之间用逗号分隔
  • tag与field之间用空格分隔
  • tag都是string类型,不需要引号将value包裹
  • field如果是string类型,需要加引号

# b. field类型

我们知道field有四种类型,int, float, string, boolean,下面看一下插入数据时,四种类型如何处理

> insert add_test,name=YiHui,phone=110 user_id=21,email="bangzewu@126.com",age=18i,boy=true
> show field keys from add_test
name: add_test
fieldKey fieldType
-------- ---------
age      integer
boy      boolean
email    string
user_id  float
1
2
3
4
5
6
7
8
9

小结一下四种类型的指定方式

类型 方式 示例
float 数字 user_id=21
int 数字i age=18i
boolean true/false boy=true
String "" or '' email="bangzewu@126.com"

# c. 时间戳指定

当写入数据不指定时间时,会自动用当前时间来补齐,如果需要自己指定时间时,再最后面添加上即可,注意时间为ns

> insert add_test,name=YiHui,phone=110 user_id=22,email="bangzewu@126.com",age=18i,boy=true 1564150279123000000
> select * from add_test;
name: add_test
time                age boy  email            name  phone user_id
----                --- ---  -----            ----  ----- -------
1564149327925320596          bangzewu@126.com YiHui 110   20
1564149920283253824 18  true bangzewu@126.com YiHui 110   21
1564150279123000000 18  true bangzewu@126.com YiHui 110   22
1
2
3
4
5
6
7
8

# 2. 指定保存策略插入数据

前面写入数据没有指定保存策略,表示这条数据写入到默认的保存策略中;我们知道一个数据库可以有多个保存策略,一个measurement中也可以存不同的保存策略的数据,在写入数据时,如果需要指定保存策略,可以使用 insert into 保存策略 ...

> show retention policies on test
name    duration shardGroupDuration replicaN default
----    -------- ------------------ -------- -------
autogen 0s       168h0m0s           1        true
1_d     24h0m0s  1h0m0s             1        false
1_h     1h0m0s   1h0m0s             1        false
> insert into "1_d" add_test,name=YiHui2,phone=911 user_id=23,email="bangzewu@126.com",age=18i,boy=true 1564150279123000000
> select * from add_test;
name: add_test
time                age boy  email            name  phone user_id
----                --- ---  -----            ----  ----- -------
1564149327925320596          bangzewu@126.com YiHui 110   20
1564149920283253824 18  true bangzewu@126.com YiHui 110   21
1564150279123000000 18  true bangzewu@126.com YiHui 110   22
> select * from "1_d".add_test;
name: add_test
time                age boy  email            name   phone user_id
----                --- ---  -----            ----   ----- -------
1564150279123000000 18  true bangzewu@126.com YiHui2 911   23
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

# II. 其他

# 0. 系列博文

  • 190723-Influx Sql系列教程四:series/point/tag/field (opens new window)
  • 190721-Influx Sql系列教程三:measurement 表 (opens new window)
  • 190719-Influx Sql系列教程二:retention policy 保存策略 (opens new window)
  • 190718-Influx Sql系列教程一:database 数据库 (opens new window)
  • 190717-Influx Sql系列教程零:安装及influx-cli使用姿势介绍 (opens new window)
  • 190509-InfluxDb之时间戳显示为日期格式 (opens new window)
  • 190506-InfluxDB之配置修改 (opens new window)
  • 190505-InfluxDB之权限管理 (opens new window)
  • 180727-时序数据库InfluxDB之备份和恢复策略 (opens new window)
  • 180726-InfluxDB基本概念小结 (opens new window)
  • 180725-InfluxDB-v1.6.0安装和简单使用小结 (opens new window)

参考博文

  • https://docs.influxdata.com/influxdb/v1.7/concepts/glossary (opens new window)
  • https://docs.influxdata.com/influxdb/v1.7/query_language/schema_exploration (opens new window)
  • https://docs.influxdata.com/influxdb/v1.7/tools/shell/#write-data-to-influxdb-with-insert (opens new window)

# 1. 一灰灰Blog (opens new window): https://liuyueyi.github.io/hexblog

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

# 2. 声明

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

  • 微博地址: 小灰灰Blog (opens new window)
  • QQ: 一灰灰/3302797840

# 3. 扫描关注

一灰灰blog

QrCode

知识星球

goals

编辑 (opens new window)
#InfluxDB#教程
上次更新: 2021/10/15, 19:56:22
Influx Sql系列教程四:series/point/tag/field
Influx Sql系列教程六:insert 修改数据

← Influx Sql系列教程四:series/point/tag/field Influx Sql系列教程六:insert 修改数据→

最近更新
01
【基础系列】基于maven多环境配置
04-25
02
【WEB系列】内嵌Tomcat配置Accesslog日志文件生成位置源码探索
04-24
03
【搜索系列】ES查询常用实例演示
04-18
更多文章>
Theme by Vdoing | Copyright © 2017-2022 一灰灰Blog
MIT License | 鄂ICP备18017282号 |
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×