Sqlite:跟踪一段时间内的值

时间:2017-08-06 18:12:17

标签: sql sqlite

enter image description here

这是Sqllite: finding abnormal values over time

的后续行动

我再次拥有以下sqllite表:

CREATE TABLE test (
    id INTEGER NOT NULL, 
    date TEXT, 
    account TEXT, 
    ........
    value INTEGER, 
    .......
    PRIMARY KEY (id), 
    CONSTRAINT composite UNIQUE (date, account)
    )

我想在2个不同的日期找到值大于0的所有行。我在想:

SELECT * from test WHERE value> 0 GROUP BY account

可能是一个开始。上一个问题的答案确实产生了帐号,但我希望在不同日期查看每个帐号的所有行,以便跟踪一段时间内的值。

BTW,在屏幕截图中标题是ID,DATE,ACCOUNT_NUMBER,VALUE

1 个答案:

答案 0 :(得分:1)

尝试:

SELECT *
FROM test
WHERE account IN (
    SELECT a.acount
    FROM test a
    JOIN test b
    ON a.account = b.account 
       AND a.date <> b.date
       AND a.value > 0 
       AND b.value > 0
)
ORDER BY account, date