psql - 如何在时间窗口内查询相对于匹配行的最后一条记录?
相对时间窗口距离第4列等于""的行是< = 20min。我试图获得匹配的行(第4列为真)和第4列中包含false的同一键(电子邮件地址)上的最新行,其时间小于在匹配的行时间前20分钟。
我的样本表:
jon@gmail.com, 100.100.100.10, 5:30pm, true, data
jon@gmail.com, 100.100.100.10, 5:24pm, false, data
jon@gmail.com, 100.100.100.10, 5:21pm, false, data
jon@gmail.com, 100.100.100.10, 5:30pm, true, data
jon@gmail.com, 100.100.100.10, 5:24pm, false, data
jon@gmail.com, 100.100.100.10, 5:24pm, false, data
jon@gmail.com, 100.100.100.10, 5:30pm, true, data
danny@gmail.com, 100.100.100.10, 5:31pm, true, data
danny@gmail.com, 100.100.100.10, 5:22pm, false, data
stew@gmail.com, 100.100.100.10, 5:41pm, true, data
stew@gmail.com, 100.100.100.10, 5:18pm, false, data
我想要得到的东西:
jon@gmail.com, 100.100.100.10, 5:30pm, true, data
jon@gmail.com, 100.100.100.10, 5:24pm, false, data
danny@gmail.com, 100.100.100.10, 5:31pm, true, data
danny@gmail.com, 100.100.100.10, 5:22pm, false, data
stew@gmail.com, 100.100.100.10, 5:41pm, true, data