나는 거래라는 테이블이 있습니다. 나는 cmnt_cre_dates 사이의 날짜를 측정 할 수 있기를 원합니다.동일한 열에있는 두 날짜 간의 차이를 계산합니다.
pt_id name trans_cmnt pt_loc last_bl_date cmnt_cre_date diff_days
94578 RAMIREZ , JOHN Trans 130 S 1/8/2015 1/8/2015 0
94578 RAMIREZ , JOHN Trans 146 S 1/8/2015 1/9/2015 1
94578 RAMIREZ , JOHN Trans 380 S 1/8/2015 1/13/2015 4
94578 RAMIREZ , JOHN Trans 344 S 1/8/2015 1/15/2015 2
54678 KIFLE ,LOLA Trans 146 S 1/16/2015 1/16/2015 0
54678 KIFLE ,LOLA Trans 230 S 1/16/2015 1/16/2015 0
12547 WEISS ,Jenny Trans 230 S 1/26/2015 1/26/2015 0
12711 FARRELL ,DIVINA Trans 230 S 1/14/2015 1/14/2015 0
12711 JOHNS ,NATIVIDAD Trans 230 S 1/23/2015 1/13/2015 0
12711 JOHNS ,NATIVIDAD Trans 230 S 1/23/2015 1/23/2015 10
를 내가 SQL에서이 작업을 수행하려면 어떻게 :
표는 내가 테이블은 다음과 같이하고 싶은이
pt_id name trans_cmnt pt_loc last_bl_date cmnt_cre_date
94578 RAMIREZ , JOHN Trans 130 S 1/8/2015 1/8/2015
94578 RAMIREZ , JOHN Trans 146 S 1/8/2015 1/9/2015
94578 RAMIREZ , JOHN Trans 380 S 1/8/2015 1/13/2015
94578 RAMIREZ , JOHN Trans 344 S 1/8/2015 1/15/2015
54678 KIFLE ,LOLA Trans 146 S 1/16/2015 1/16/2015
54678 KIFLE ,LOLA Trans 230 S 1/16/2015 1/16/2015
12547 WEISS ,Jenny Trans 230 S 1/26/2015 1/26/2015
12711 FARRELL ,DIVINA Trans 230 S 1/14/2015 1/14/2015
12711 JOHNS ,NATIVIDAD Trans 230 S 1/23/2015 1/13/2015
12711 JOHNS ,NATIVIDAD Trans 230 S 1/23/2015 1/23/2015
처럼 보인다? 당신은 당신이 사용하고있는 데이터베이스를 지정하지 않았기 때문에
update your_table current set diff_days =
cmnt_cre_date - (select max(cmnt_cre_date) from your_table
where cmnt_cre_date < current.cmnt_cre_date
and name = current.name) ;
update your_table set diff_days = 0 where diff_days is null;
위를
어떤 데이터베이스를 사용하고 있습니까? –