查找365天内的具体数据



我有一个表,里面有50年来某些人在哪里工作和生活的各种历史数据。为了简化,每条记录都有一个日期、一个person_id、一个address_id和一个布尔值true或false,以及第二个布尔值居住地true或false。数据是零星的,没有多少匹配。这个人可能住在他工作的地方,尽管为了这个问题的目的,这一点可以忽略。

我想找到每个实例,当有一个人的工作地址和居住地址在一年的跨度。当然,这个人在过去的50年里可能换过工作和住所。

信息的摘要可以在:https://secure-shore-68966.herokuapp.com/connections上看到。

Rails程序在https://bitbucket.org/MtnBiker/crores5/

是否有办法做到这一点与SQL/活动记录?我可以看到对每个记录进行迭代,并找到该人员在每个记录中出现的正负六个月的情况。但我希望用SQL的方式。我想在地图上给每一对画一条线。

表:<代码>创建表public.years(nextval('years_id_seq'::regclass),year_date日期,created_at timestamp不带时区updated_at没有时区的时间戳雷斯托布尔,渣油布尔,源文本,person_id整数,location_id整数,标题字符变化,指出文本,Resto_name字符变化,Ref_link字符变化,Ref_url字符变化,Snippet_file_name字符变化,Snippet_content_type字符变化,snippet_file_size整数,Snippet_updated_at时间戳不带时区约束years_pkey主键(id),约束fk_rails_8fc1813509外键(person_id)公共的引用。people (id) MATCH SIMPLE更新无动作,删除无动作,约束fk_rails_e1624dbb3f FOREIGN KEY (location_id)公共的引用。地点(id)匹配简单更新无动作,删除无动作)>

从项目的日期。如果我要迭代,我会查看该行的日期,并查找该人员是否在六个月内有任何条目。附加条件是,如果项目仍然为真,则+- 6个月将恢复为真。

最新更新