나는 다음과 같은 임시 테이블의 구조를 가지고 :새 값으로 임시 테이블의 열을 업데이트
CREATE TABLE #TempTable (
ID INT,
CId TINYINT,
TagId INT,
Beginning_X DECIMAL(18,5),
Beginning_Y DECIMAL(18,5),
Ending_X DECIMAL(18,5),
Ending_Y DECIMAL(18,5))
INSERT INTO #TempTable (ID, CId, TagId, Beginning_X, Beginning_Y)
SELECT ID, CId,TagId, X, Y
FROM Table_1
WHERE IsRepeat = 1
INSERT INTO #TempTable(Ending_X, Ending_Y)
SELECT X,Y
FROM Table_1 t
WHERE t.ID IN (SELECT ID+1
FROM Table_1
where IsRepeat = 1))
두 번째 삽입 첫 삽입 문에서 모든 값을 제거하고 난 이유를 알아낼 수 없습니다. 두 번째 삽입의 결과를 첫 번째 삽입에 추가하고 단색 테이블을 하나 만들고 싶습니다.
편집 : 나는 해결책을 찾을 생각 :
UPDATE t
SET t.Ending_X = p.X, t.Ending_Y = p.Y
FROM #TempTable t, Table_1 p
WHERE p.ID IN (SELECT ID+1 FROM Table_1 where IsRepeat = 1)
AND p.ID-1 = t.ID
는 소리 필요가 있다고 생각 두 쿼리를 unioning에 대한 두 번째 삽입물로 'UPDATE'하십시오. 권리? 아니면 정말로 새로운 행을 원하십니까? –
새 행이 없습니다. 다른 UPDATE 문을 시도했지만 어디에도 가지 않습니다. – Mellonjollie