- SQL 素人が書いてます
CREATE TABLE authn_log (
id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
json JSON NOT NULL,
created_unixtime INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),
created_at TIMESTAMP NOT NULL DEFAULT (DATETIME('now'))
);
INSERT INTO authn_log(json) VALUES('{"github_id": 1, "abc": 10}');
INSERT INTO authn_log(json) VALUES('{"github_id": 1, "abc": 10}');
INSERT INTO authn_log(json) VALUES('{"github_id": 2, "abc": 1}');
INSERT INTO authn_log(json) VALUES('{"github_id": 3, "abc": 20}');
INSERT INTO authn_log(json) VALUES('{"github_id": 3, "abc": 20}');
SELECT json_extract(json, '$.github_id'), sum(json_extract(json, '$.abc')) FROM authn_log GROUP BY json_extract(json, '$.github_id');
sqlite> SELECT json_extract(json, '$.github_id'), sum(json_extract(json, '$.abc')) FROM authn_log GROUP BY json_extract(json, '$.github_id');
1|20
2|1
3|40
- The JSON1 Extension
- とりあえずこれをじっくり読み込むのがいい
以下は雰囲気を掴むために読むくらいで良い。