首页 > 解决方案 > 对于每个重复的数据,SQLite3 将 Count 递增 1

问题描述

我是 sqlite3 的新手。我通过 python 在 SQLite 中导入了一个导出的 CSV 文件,其中列出了 Splunk 的 IP 地址,并且我计划在每次识别出类似的 IP 地址时增加我的数据库中的计数列。

我想到的是使用SQLite CASE 语句文档更新语句等。我试过了:

SELECT * CASE WHEN src_ip = src_ip THEN UPDATE table SET Count = Count + 1;

也试过,

UPDATE table SET Count = Count + 1 WHERE src_ip = src_ip;

我知道我错了,我好几天都无法完全解决这个问题。这是我的 sqlite3 数据库在 cmd 提示符下的样子:

sqlite> select * from result;
1537536602|2002:8672:d515::8672:d515|
1537288499|150.135.165.114|
1537536602|2002:8672:d515::8672:d515|
1537288499|150.135.165.114|
sqlite>
sqlite> .schema
CREATE TABLE result (_time STR, 'src_ip' STR, Count INT);
sqlite>

我将继续寻找解决方案。我很感激任何反馈!

标签: pythonsqlitesplunk

解决方案


你不能在插入记录时自动增加一个计数器吗?

https://www.sqlite.org/autoinc.html


推荐阅读