1
SQL Server 임시 테이블에서 간단한 업데이트를 수행하고 있습니다. 세 개의 별도 명령문을 사용하여 단일 열을 업데이트 할 때 일관성없는 결과가 발생하지만 단일 SQL 문에서 동일한 열을 업데이트 할 때 기대되는 결과를 얻을 수 있습니다. 제발 누군가가 둘 사이의 차이점을 지적 할 수 있습니다. 내가 놓친 게 있니?SQL Server 업데이트 열 결과가 일치하지 않습니다.
OldEmail NewEmail
--------------------- --------------------------
[email protected] [email protected]
[email protected] [email protected]
[email protected] [email protected]
어떤 아이디어 :
CREATE TABLE #EmailChanges
(
OldEmail varchar(100),
NewEmail varchar(100)
)
INSERT INTO #EmailChanges(OldEmail)
VALUES
('[email protected]'),
('[email protected]'),
('[email protected]')
UPDATE #EmailChanges SET NewEmail = replace(OldEmail, '@ccc.abc.com', '@new.domain.com')
UPDATE #EmailChanges SET NewEmail = replace(OldEmail, '@xyz.com', '@new.domain.com')
UPDATE #EmailChanges SET NewEmail = replace(OldEmail, '@abc.com', '@new.domain.com')
-- If I uncomment below sql and comment above three updates, I get desired output.
-- UPDATE #EmailChanges SET NewEmail = replace(replace(replace(OldEmail, '@ccc.abc.com', '@new.domain.com'), '@xyz.com', '@new.domain.com'), '@abc.com', '@new.domain.com')
SELECT * FROM #EmailChanges
이 날 결과 다음과 기븐스 : 여기
는 SQL입니까?
감사 마틴을 사용할 수 있습니다 작동합니다! 바보 나! :( –