2012-01-03 2 views
0

고객 레코드가 존재하는 한 다른 테이블을 업데이트하려고 합니다만, 고객 레코드가있는 한 업데이트 할 수 있지만 일부 항목은 있습니다. SQL 삽입/업데이트 문제

SELECT * 
INTO SalBudgetCust 
FROM SalBudgetCust_temp 
WHERE NOT EXISTS (
    SELECT Customer 
    FROM SalBudgetCust 
    WHERE Customer = SalBudgetCust_temp.Customer 
) 

하지만 메신저 임이 시점에서 붙어

There is already an object named 'SalBudgetCust' in the database. 

가 표시 다음 삽입을 실행 내가 해봤이 문제를 해결하기 위해 ... 사람이 조금 guideance을 제공 할 수 있을까?

답변

5

SELECT INTO은 내 이름으로 테이블을 암시 적으로 만듭니다. 대신 INSERT INTO ... SELECT * FROM ...을 사용해야 기존 테이블이 사용됩니다.

INSERT INTO new_table 
SELECT * FROM old_table 
WHERE some_condition; 

, NEW_TABLE 테이블 어디입니다 :

0

INSERT INTO SalBudgetCust SELECT * FROM SalBudgetCust_temp 
WHERE NOT EXISTS 
(
SELECT Customer FROM SalBudgetCust WHERE Customer = SalBudgetCust_temp.Customer 
) 
+0

나는 'FROM'키워드 근처의 잘못된 구문 오류로 다시 돌아왔다. 필자는 테이블 이름이 모두 정확하다는 것을 확인했습니다. – lewiscooksey

+0

죄송합니다 ... 작은 실수. 수정되었습니다 ... 지금 시도하십시오. – Rahul

0

다른에 하나 개의 테이블의 데이터를 삽입하는 일반적인 구문은 다음과 같은 ... 대신 SELECT * INTOINSERT INTO해야한다 데이터를 삽입하려는 경우 old_table은 데이터를 가져 오는 테이블이고 some_condition은 이전 테이블의 데이터를 가져 오려는 표현식/조건입니다.

order by, group by 및 where 절 이후의 하위 쿼리와 같은 다른 절을 사용할 수 있습니다.

이 부분은 SQL INSERT INTO이며 그 이후 페이지입니다.