Гистограмма для периодов времени с использованием SQLite (обычные сегменты шириной 1 час) - PullRequest
1 голос
/ 22 февраля 2020

У меня есть серия данных о посетителях, и я хотел бы представить ее временные интервалы в виде гистограммы таким же образом Карты Google .
Google Maps
В моей таблице два столбца: firstSeen и еще один называется lastSeen. Оба содержат (я думаю) так называемые Unix -временные метки, такие как 1581981627248.0 или 1581981629641.0, их тип REAL.
И я немного растерялся, должен сказать, я не слишком опытен в использовании SQL. Вычислить среднее время пребывания и т. Д. Было легко, но это немного странно?
Я мог бы легко сделать что-то вроде следующего запроса:

SELECT 
    strftime('%H', datetime(round(firstseen / 1000), 'unixepoch', 'weekday 1')) as 'Hour'
FROM visitors;

Это уже всего один день (понедельник), что я думаю, это нормально, я думаю.
Тогда я мог бы count и group by час. Но не одно ли это было бы неправильно? Я бы считал firstSeen только полем, но как насчет посетителя, который присутствовал в 08: 59-09: 00? Насколько я понимаю, вам придется подсчитать их подарок дважды в этом случае, один раз для промежутка времени от 08:00 до 08:59 и один раз для 09:00 до 09:59. Я также вижу еще одну проблему для пустых слотов, можно ли их включить? Будет ли это вообще иметь смысл?

Надеюсь, понятно, чего я хотел бы достичь sh, и кто-то может указать мне правильное направление.

~ Редактировать ~
добавил MRE :

CREATE TABLE `detections_2` (
    `firstseen` REAL NOT NULL,
    `lastseen`  REAL NOT NULL
);

INSERT INTO detections_2(
    firstSeen,
    lastSeen
)
VALUES
    (1581892607,1581892644),
    (1581892607,1581892694),
    (1581892607,1581892703),
    (1581892607,1581892629),
    (1581892607,1581892619),
    (1581892607,1581892683),
    (1581892607,1581892702),
    (1581892607,1581892651),
    (1581892607,1581892697),
    (1581892607,1581892654),
    (1581892607,1581892680),
    (1581892607,1581892619),
    (1581892607,1581892700),
    (1581892607,1581892716),
    (1581892607,1581892700),
    (1581892607,1581892643),
    (1581892607,1581892720),
    (1581892607,1581892647),
    (1581892607,1581892726),
    (1581892607,1581892679),
    (1581892607,1581892665),
    (1581892607,1581892701),
    (1581892607,1581892659),
    (1581892607,1581892725),
    (1581892607,1581892662),
    (1581892607,1581892661),
    (1581979007,1581979037),
    (1581979007,1581979054),
    (1581979007,1581979038),
    (1581979007,1581979100),
    (1581979007,1581979027),
    (1581979007,1581979080),
    (1581979007,1581979034),
    (1581979007,1581979119),
    (1581979007,1581979027),
    (1581979007,1581979093),
    (1581979007,1581979068),
    (1581979007,1581979061),
    (1581979007,1581979115),
    (1581979007,1581979126),
    (1581979007,1581979106),
    (1581979007,1581979114),
    (1581979007,1581979078),
    (1581979007,1581979078),
    (1581979007,1581979056),
    (1581979007,1581979117),
    (1581979007,1581979040),
    (1581979007,1581979057),
    (1581979007,1581979068),
    (1581979007,1581979103)
...