对于我的研究实验室,我得到了一些包含500,000个时间,电流和电压条目的文件。我制作了一个小程序,并将所有条目转储到SQLite表名称gold100mV中,该表只有3列:time,pA和mV。
是否可以有一个可以比较行并选择的查询?该查询如何?
A query that detect a large value change and select the rows:
time pA mV
"1.7119" "-1037.6" "-101.746"
"1.7121" "-1013.18" "-101.776"
"1.7123" "-1007.08" "-101.715"
"1.7125" "-1031.49" "-101.837" // <-- Row of interest
"1.7127" "1684.57" "98.938" // <-- Row of interest
"1.7129" "1196.29" "99.0295"
"1.7131" "1098.63" "98.999"
"1.7133" "1098.63" "99.1516"
"1.7135" "1062.01" "99.1211"
答案 0 :(得分:0)
您可以尝试这样的事情:
SELECT *
FROM gold100mV g
WHERE NOT EXISTS (
SELECT *
FROM gold100mV
WHERE time > g.time AND pA > 0.9 * g.pA AND pA < 1.1 * g.pA
AND mV > 0.9 * g.mV AND mV < 1.1 * g.mV
)
您也可以添加和减去修正号而不是乘法,无论您选择什么。这也会选择最后一行,你需要添加一个额外的条件,即该行不能是最后一行才能获得2行。