Influx Sql系列教程七:delete 刪除資料
阿新 • • 發佈:2019-12-31
前面介紹了使用insert實現新增和修改記錄的使用姿勢,接下來我們看一下另外一個簡單的使用方式,如何刪除資料
1. delete 語句
delete的官方語法如下
DELETE FROM <measurement_name> WHERE [<tag_key>='<tag_value>'] | [<time interval>]
複製程式碼
delete語句和我們常見sql語法有點像,但是注意一下上面的where中的條件,只允許根據tag和時間來進行刪除操作
下面給出幾個簡單的例子
case1 根據時間刪除
> select * from add_test
name: add_test
time age boy email name phone user_id
---- --- --- ----- ---- ----- -------
1564149327925320596 19 true [email protected] YiHui 110 0
1564149920283253824 18 true [email protected] YiHui 110 21
1564150279123000000 18 true [email protected] YiHui 110 22
> delete from add_test where time>=1564150279123000000
> select * from add_test
name: add_test
time age boy email name phone user_id
---- --- --- ----- ---- ----- -------
1564149327925320596 19 true [email protected] YiHui 110 0
1564149920283253824 18 true [email protected] YiHui 110 21
複製程式碼
case2 根據tag刪除
注意name為保留名,因此需要用雙引號括起來
> show tag keys from add_test
name: add_test
tagKey
------
name
phone
> delete from add_test where "name"='YiHui'
> select * from add_test
>
複製程式碼
2. 不同儲存策略的資料刪除
從前面的語法定義中,沒有看到指定保留策略的情況,那麼如果需要刪除某個儲存策略的資料,應該怎樣?
> insert add_test,name=YiHui,phone=110 boy=true,age=19i,user_id=2
> insert into "1D" add_test,user_id=1
> select * from add_test
name: add_test
time age boy name phone user_id
---- --- --- ---- ----- -------
1564483471390538399 19 true YiHui 110 2
> select * from "1D".add_test
name: add_test
time age boy name phone user_id
---- --- --- ---- ----- -------
1564483483748916258 19 true YiHui 110 1
> delete from add_test where "name"='YiHui'
> select * from add_test
> select * from "1D".add_test
>
複製程式碼
執行上面的case之後,發現根據tag進行刪除時,預設策略,和"1D"儲存策略中的資料都被刪除掉了
下面是另外一個驗證
> select * from add_test;
name: add_test
time age boy name phone user_id
---- --- --- ---- ----- -------
1564483778197609864 19 true YiHui 110 1
> insert into "2_h" add_test,user_id=1
> select * from "2_h".add_test;
name: add_test
time age boy name phone user_id
---- --- --- ---- ----- -------
1564483793280811751 19 true YiHui 110 1
> delete from add_test where time=1564483793280811751
> select * from "2_h".add_test;
> select * from add_test;
name: add_test
time age boy name phone user_id
---- --- --- ---- ----- -------
1564483778197609864 19 true YiHui 110 1
複製程式碼
我們在"2_h"
這個策略中新增了一條資料,直接根據時間進行刪除,當前的策略下的資料沒有影響,"2_h"
策略中剛新增的資料被刪除掉了
II. 其他
0. 系列博文
- 190729-Influx Sql系列教程六:insert 修改資料
- 190726-Influx Sql系列教程五:insert 新增資料
- 190723-Influx Sql系列教程四:series/point/tag/field
- 190721-Influx Sql系列教程三:measurement 表
- 190719-Influx Sql系列教程二:retention policy 儲存策略
- 190718-Influx Sql系列教程一:database 資料庫
- 190717-Influx Sql系列教程零:安裝及influx-cli使用姿勢介紹
- 190509-InfluxDb之時間戳顯示為日期格式
- 190506-InfluxDB之配置修改
- 190505-InfluxDB之許可權管理
- 180727-時序資料庫InfluxDB之備份和恢復策略
- 180726-InfluxDB基本概念小結
- 180725-InfluxDB-v1.6.0安裝和簡單使用小結
參考博文
- docs.influxdata.com/influxdb/v1…
- docs.influxdata.com/influxdb/v1…
- docs.influxdata.com/influxdb/v1.7/tools/shell/#write-data-to-influxdb-with-insert
- docs.influxdata.com/influxdb/v1…
1. 一灰灰Blog: liuyueyi.github.io/hexblog
一灰灰的個人部落格,記錄所有學習和工作中的博文,歡迎大家前去逛逛
2. 宣告
盡信書則不如,已上內容,純屬一家之言,因個人能力有限,難免有疏漏和錯誤之處,如發現bug或者有更好的建議,歡迎批評指正,不吝感激
- 微博地址: 小灰灰Blog
- QQ: 一灰灰/3302797840
3. 掃描關注
一灰灰blog