在influxdb中没有专门的修改数据的
update
语句,对于influxdb而言,如果想修改数据,还是得使用我们前面的说到的
insert
来实现,那么怎么判断一条insert语句是插入还是修改呢?
1. insert数据修改
关于insert的使用语法,可以参考上一篇博文:190726-Influx Sql系列教程五:insert 添加数据
这里只是贴一下基本语法
insert into <retention policy> measurement,tagKey=tagValue fieldKey=fieldValue timestamp
复制代码
如果我们希望修改一条数据,比如修改既有的field,或者增加/删除field时,我们需要指定具体的时间戳和tag
下面是一个简单的修改演示
> select * from add_test where time=1564149327925320596
name: add_test
time age boy email name phone user_id
---- --- --- ----- ---- ----- -------
1564149327925320596 bangzewu@126.com YiHui 110 20
> show tag keys from add_test
name: add_test
tagKey
------
phone
> insert add_test,name=YiHui,phone=110 user_id=20,email="bangzewu@126.com",boy=true,age=18i 1564149327925320596
> select * from add_test where time=1564149327925320596
name: add_test
time age boy email name phone user_id
---- --- --- ----- ---- ----- -------
1564149327925320596 18 true bangzewu@126.com YiHui 110 20
复制代码
在上面的case中,我们执行的的insert语句来修改某条已有的记录时,有几个参数必须存在
-
time: 指定为要要改记录的时间戳
-
tag: 所有的tag都必须和要修改的数据一致
name=YiHui,phone=110
然后field的内容,会增量修改之前的数据,如下
> insert add_test,name=YiHui,phone=110 boy=true,age=19i 1564149327925320596
> select * from add_test where time=1564149327925320596
name: add_test
time age boy email name phone user_id
---- --- --- ----- ---- ----- -------
1564149327925320596 19 true bangzewu@126.com YiHui 110 20
复制代码
通过上面的insert,可以动态新增field,但是如果我希望删除field怎么办?
-
目前提供的
influxdb sql
中没有找到删除field的方式,一个可供选择的方式就是把原来的记录删掉;然后再重新插入一条
如果需要修改tag怎么办?
-
前面的case已经表明,修改记录是根据 time + tag values来唯一定位记录,然后执行删除的,如果你需要修改一个tag,对
insert
语句而言就是新增了一个point;这个时候可以考虑由自己来删除旧的数据
在企业级应用中,数据的安全性和隐私保护是极其重要的,为了实现Spark SQL 对数据的精细化管理及提高数据的安全性和可控性,数栈基于 Apache Ranger 实现了 Spark SQL 对数据处理的权限控制,本文将重点描述数栈如何基于 Ranger 赋予了 Spark SQL 在权限管控方面,更强的管控力度、更丰富的能力。
本篇文章讲解的主要内容是:***如何使用lag函数让结果集重复数据只显示一次、用行转列pivot写法优化部门之间计算工资差异类似需求、如何通过ceil函数对已有数据进行分组打印、放假安排团队分组值班,如何通过ntile()over(order by )快速进行人员分组***
怎样对数据组合重新排列并去重的问题、通过如何找到包含最大值和最小值的记录这个问题再次用执行计划给你证明分析函数性能不一定高【SQL开发实战技巧】这一系列博主当作复习旧知识来进行写作,毕竟SQL开发在数据分析场景非常重要且基础,面试也会经常问SQL开发和调优经验,相信当我写完这一系列文章,也能再有所收获,未来面对SQL面试也能游刃有余~。本篇文章主要介绍的两个方面,第一个方面曾经有好几个网友和同事问我,第二个问题真的是很多同行的通病,认为分析函数是万金油,一股脑用。
如何识别重叠的日期范围、日期出现次数、确定当前记录和下一条记录之间相差的天数【SQL开发实战技巧】这一系列博主当作复习旧知识来进行写作,毕竟SQL开发在数据分析场景非常重要且基础,面试也会经常问SQL开发和调优经验,相信当我写完这一系列文章,也能再有所收获,未来面对SQL面试也能游刃有余~。例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。