Influx Sql系列教程三:measurement 表
在influxdb中measurement相當(dāng)于mysql中的表,可以理解為一條一條記錄都是存與measurent中的,一個(gè)數(shù)據(jù)庫中可以有多個(gè)measurement,一個(gè)measurement中可以存很多的數(shù)據(jù)。雖然可將measurement類比為mysql中的表,但是他們之間的差別也挺明顯的
<!-- more -->
首先我們先了解一下measurement的幾個(gè)常用命令,如何查看、新增刪除
1. show measurements
查看一個(gè)數(shù)據(jù)庫中有哪些measurement,屬于常規(guī)操作了
- 先確定數(shù)據(jù)庫
- 執(zhí)行show measurements 查看當(dāng)前數(shù)據(jù)庫的所有measurement
我們也可以在不執(zhí)行use databaseName的時(shí)候,進(jìn)行查看;而且還支持按名進(jìn)行匹配,語法為
SHOW MEASUREMENTS [ON <database_name>] [WITH MEASUREMENT <regular_expression>] [WHERE <tag_key> <operator> ['<tag_value>' | <regular_expression>]] [LIMIT_clause] [OFFSET_clause]下面給出查詢指定數(shù)據(jù)庫中,以yhh開頭的所有measurement示例
> show measurements on test name: measurements name ---- doraemon doraemon2 yhh yhh2 > show measurements on test with measurement =~ /yhh*/ name: measurements name ---- yhh yhh22. 創(chuàng)建measurement
在influxdb中沒有專門用來創(chuàng)建measurement的命令,在執(zhí)行向某個(gè)measurement新增記錄的時(shí)候,如果不存在measurement,則會新創(chuàng)建一個(gè)
下面是一條簡單的演示case
# 像userInfo中新增一條記錄,如果userInfo這個(gè)measurement不存在,則新建一個(gè) > insert userInfo,name=一灰灰blog userId=10,blog="https://blog.hhui.top/" > show measurements name: measurements name ---- doraemon doraemon2 userInfo yhh yhh23. 刪除measurement
兩種方式,一個(gè)是把measurement里面的所有數(shù)據(jù)都刪完,那么這個(gè)measurement就沒了
> select * from userInfo name: userInfo time blog name userId ---- ---- ---- ------ 1563712849953792293 https://blog.hhui.top/ 一灰灰blog 10 # 刪除userInfo中的記錄 > delete from userInfo where time=1563712849953792293 # 再次查看,發(fā)現(xiàn)userInfo已經(jīng)被刪除 > show measurements name: measurements name ---- doraemon doraemon2 yhh yhh2 >另外一種方式就是直接使用drop measurement命令實(shí)現(xiàn)刪除
# 先創(chuàng)建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是沒有修改操作的,從前面的創(chuàng)建操作也可以看出,對于measurement而言,也就只有一個(gè)名字,那如果我希望重命名現(xiàn)有的measurement,該怎么辦?
原則上不建議這么干,如果確實(shí)有需要,可以用下面的方式來變相實(shí)現(xiàn)
> show measurements name: measurements name ---- doraemon doraemon2 userInfo yhh yhh2 # 使用select into語句實(shí)現(xiàn)將查詢結(jié)果保存到另外一個(gè)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 10name: userInfo time blog name name_1 userId ---- ---- ---- ------ ------ 1563713690876924095 https://blog.hhui.top/ 一灰灰blog 10 >II. 其他
0. 系列博文
- 190719-Influx Sql系列教程二:retention policy 保存策略
- 190717-Influx Sql系列教程零:安裝及influx-cli使用姿勢介紹
- 190509-InfluxDb之時(shí)間戳顯示為日期格式
- 190506-InfluxDB之配置修改
- 190505-InfluxDB之權(quán)限管理
- 180727-時(shí)序數(shù)據(jù)庫InfluxDB之備份和恢復(fù)策略
- 180726-InfluxDB基本概念小結(jié)
- 180725-InfluxDB-v1.6.0安裝和簡單使用小結(jié)
參考博文
- https://docs.influxdata.com/influxdb/v1.7/query_language/schema_exploration/#show-series
1. 一灰灰Blog: https://liuyueyi.github.io/hexblog
一灰灰的個(gè)人博客,記錄所有學(xué)習(xí)和工作中的博文,歡迎大家前去逛逛
2. 聲明
盡信書則不如,已上內(nèi)容,純屬一家之言,因個(gè)人能力有限,難免有疏漏和錯(cuò)誤之處,如發(fā)現(xiàn)bug或者有更好的建議,歡迎批評指正,不吝感激
- 微博地址: 小灰灰Blog
- QQ: 一灰灰/3302797840
3. 掃描關(guān)注
一灰灰blog
知識星球
轉(zhuǎn)載于:https://my.oschina.net/u/566591/blog/3095253
總結(jié)
以上是生活随笔為你收集整理的Influx Sql系列教程三:measurement 表的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: matlab中subs赋值范围,[转载]
- 下一篇: 详述 Kafka 基本原理