1
내가하고 싶은어떻게 여기
Cm_ID | Cust_ID | StartDate | EndDate | Status
1 | 1020 | 05/09/2013 | 20/09/2013 | Off
2 | 1027 | 16/09/2013 | **31/12/2099** | **On**
3 | 1020 | 21/09/2013 | 31/12/2099 | On
CustInfo 내 테이블의 구조는 테이블에 행을 삽입하고 SQL 서버에 새 행을 삽입하기 전에 마지막 행을 업데이트하는 것을 나는 새로운 행을 삽입 할 때마다 for Cust_ID = 1027 먼저 [EndDate]를 새로운 [StartDate] 즉 Today로 업데이트하고 [Status] = 'Off'로 설정해야합니다.
새 행을 삽입 한 후에는 다음과 같이 나는이 사용하는 2 개 개의 다른 쿼리를 수행 한이
Cm_ID | Cust_ID | StartDate | EndDate | Status
1 | 1020 | 05/09/2013 | 20/09/2013 | Off
2 | 1027 | 16/09/2013 | **30/09/2013** | **Off**
3 | 1020 | 21/09/2013 | 31/12/2099 | On
4 | 1027 | 01/10/2013 | 31/12/2099 | On
처럼 보일 것입니다.
Update CustInfo SET EndDate = '30/09/2013' ,Status='Off'
WHERE Cm_ID=(SELECT MAX(Cm_ID) FROM CustInfo WHERE EndDate='12/31/2099' AND Cust_ID=1027)
INSERT INTO CustInfo ([Cust_ID], [StartDate], [EndDate], [CurrentStatus])
VALUES(1027,'01/10/2013','12/31/2099','On')
이제 단일 쿼리 또는 저장 프로 시저를 사용하여이 작업을 수행하려고합니다. 그러나 나는 이것을 어떻게하는지 모른다.