用SQL做一个类似行车记录仪的数据表的功能该怎么弄?

gezhu1212 2021-05-06 08:43:49
做一个表,数据表固定大小1800每秒钟更新一条,当更新到第30分钟零1秒的时候,第一条记录被删除,这样循环更新数据库,该怎么做?
...全文
475 点赞 收藏 9
写回复
9 条回复
insert 插入后 delete where 时间<= 现在时间-30分钟 这样就记录了 最近30分钟的轨迹
回复 点赞
xuzuning 05月12日
你的需求已经描述的很清楚了 SQL 同样也有定时器
回复 点赞
badbad_boy 05月11日
表里设置个ID做主键, 1 到1800, 在前端或者后端设置个计数器,从1 一直开始往上加,考虑Long 型, 计数器的值 模除 1800 就是实际对应的行。 行号在表里存在就更新,否则就删除
回复 点赞
Harrison_2009 05月08日
同意2楼,直接Redis就好
回复 点赞
shawn_yang 05月08日
为啥不是30min就update呢,而是insert
回复 点赞
Summer_djz 05月07日
就像2楼说的就行,插之前先删 用redis的列表也可以,插之前先删,怕数据丢失就配置rdb或aof
回复 点赞
ziqi0716 05月07日
简单实现的话,甚至不需要数据库,文本文件的增删就行吧。 两个工作线程,一个将最新数据存文件,另一个定时检查有无过期数据,删之。间隔30分钟也不会打架。
回复 点赞
Eason0807 05月06日
你这不适合用sql,nosql更合适,甚至弄个redis就行了
回复 点赞
wanghui0380 05月06日
想复杂了。 你的要求其实就是“insert一条的同时,删除30分钟以前的”
回复 点赞
发动态
发帖子
C#
创建于2007-09-28

8.4w+

社区成员

64.0w+

社区内容

.NET技术 C#
社区公告
暂无公告