SQLite3 увеличивает счетчик на 1 для каждых повторяющихся данных

1

Я новичок в sqlite3. Я импортировал в SQLite через python экспортированный CSV файл с перечислением IP-адресов из Splunk, и я планирую увеличить столбцы count в моей базе данных каждый раз, когда узнается аналогичный 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>

Я продолжу искать решение. Я ценю любую обратную связь!

  • 0
    Вы хотите, чтобы время в столбце IP было уникальным? А как насчет столбца метки времени? Как это следует рассматривать с дубликатами IP-адресов? Вероятно, это лучший вариант - хранить все данные в отдельных строках и вычислять количество IP-адресов во время выполнения, чтобы не терять метки времени.
  • 0
    @Shawn Я ценю ваш ответ, я планирую использовать временную метку для удаления строк через определенное время - срок действия истекает через 30 дней, если он не будет найден снова, а число увеличится с нуля до 1 и добавит дату окончания срока действия к 45+ дням и т. Д. До 3 отсчетов - Я получил удаление строки выяснил часть. Я хочу знать, как увеличить количество столбцов строки +1 каждый раз, когда он находит аналогичный IP-адрес, когда я снова запускаю скрипт.
Показать ещё 6 комментариев
Теги:
sqlite3
splunk

1 ответ

0

Не могли бы вы просто автоинкремент счетчика при вставке записей?

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

Ещё вопросы

Сообщество Overcoder
Наверх
Меню