您好我正在使用SQL DB2并且有一个2005-01-01 to 2012-12-31
的学习窗口,其中不同的人住在一个地址不同的时间,例如。
Person Date_birth Address Start End
1 1973-06-01 312a 2001-01-01 2006-04-05
1 1973-06-01 104c 2008-04-11 2013-01-02
2 1989-11-26 56e 2006-11-07 2011-10-31
对于每个人,我需要知道他们在数据中给出的地址生活了多少天,而且只有在研究窗口中存在时才计算天数。
所以第1个人例如花了120天27岁between 2001-01-01 and 2001-06-01
,然后365天28岁between 2001-06-01 and 2002-06-01
等等。
我可以明确地确定每个人在每个新地址开始时的年龄,但是如何确定他们生活在每个有效地址时的后续生日。有没有人对我可以从哪里开始有任何合理的见解。不一定要寻找代码。
答案 0 :(得分:0)
试试这个:
这是一个简单的SQL查询,用于查找两个日期之间的天数差异。
SimpleDateFormat format=new SimpleDateFormat("dd/MM/yyyy");
Date myDate=null,myDate1=null;
myDate=format.parse(oldDate);
myDate1=format.parse(newDate);
int diffInDays = (int)( (myDate1.getTime() - myDate.getTime())/ (1000 * 60 * 60 * 24) );