[SQL] (다른 테이블이다)의 다른 컬럼에 하나 개의 컬럼 데이터를 복사
SQL(다른 테이블이다)의 다른 컬럼에 하나 개의 컬럼 데이터를 복사
나는 다른 테이블의 다른 열 한 열에서 데이터를 복사합니다. 내가 어떻게 할 수 있습니까?
나는 다음을 시도 :
Update tblindiantime Set CountryName =(Select contacts.BusinessCountry From contacts)
그러나 그것은 작동하지 않았다.
나는 tblindiantime 테이블의 "COUNTRYNAME"열 접촉 테이블의 "BusinessCountry"열을 복사 할.
해결법
-
==============================
1.다음과 같이 2008 SQL 서버에서는 다중 테이블 업데이트를 사용할 수 있습니다 :
다음과 같이 2008 SQL 서버에서는 다중 테이블 업데이트를 사용할 수 있습니다 :
UPDATE tblindiantime SET tblindiantime.CountryName = contacts.BusinessCountry FROM tblindiantime JOIN contacts ON -- join condition here
당신은 업데이트해야하는 행 지정하는 조인 조건이 필요합니다.
목표 테이블이 현재 비어있는 경우에 당신은 INSERT를 대신 사용해야합니다 :
INSERT INTO tblindiantime (CountryName) SELECT BusinessCountry FROM contacts
-
==============================
2.쿼리 여기 :
쿼리 여기 :
같은 테이블 :
UPDATE table_name SET column1 = column2
다른 테이블 :
UPDATE table_name1 SET column1 = ( SELECT column2 FROM table_name2 WHERE table_name1.id = table_name2.id );
-
==============================
3.Table2.Column2 => Table1.Column1
Table2.Column2 => Table1.Column1
이 질문은 오래지만 허용 대답은 나를 위해 작동하지 않았다 알고 있습니다. 미래 Google 직원이 나를 위해 일 것입니다 :
UPDATE table1 SET column1 = ( SELECT column2 FROM table2 WHERE table2.id = table1.id );
하였으되
-
==============================
4.희망 당신은 키 필드가 두 테이블입니다.
희망 당신은 키 필드가 두 테이블입니다.
UPDATE tblindiantime t SET CountryName = (SELECT c.BusinessCountry FROM contacts c WHERE c.Key = t.Key )
-
==============================
5.비슷한 질문의 대답은 (마크 바이어스에 의해)이 질문의 선택 대답보다 나를 더 정확하게했다. 마크의 답변을 사용하여, 내 업데이트 된 열은 모든 행에 같은 값 (조인 일치하는 첫 번째 행에서 아마도 값)을 얻었다. 올바른 값으로 열을 업데이트 다른 스레드에서 ParveenaArora의 답변을 사용.
비슷한 질문의 대답은 (마크 바이어스에 의해)이 질문의 선택 대답보다 나를 더 정확하게했다. 마크의 답변을 사용하여, 내 업데이트 된 열은 모든 행에 같은 값 (조인 일치하는 첫 번째 행에서 아마도 값)을 얻었다. 올바른 값으로 열을 업데이트 다른 스레드에서 ParveenaArora의 답변을 사용.
Parveena의 솔루션을 변형하는 것은이 질문에 '테이블 및 열 이름을 사용하기로 될 쿼리 (I 가정 곳 테이블이 tblindiantime.contact_id을 통해 관련) 다음과 같습니다 :
UPDATE tblindiantime SET CountryName = contacts.BusinessCountry FROM contacts WHERE tblindiantime.contact_id = contacts.id;
-
==============================
6.나는 코드를 아래이, 당신은 한 번에 여러 행을 업데이트 할 필요가 특별히 경우 참고 매우 유효 이전의 모든 해답이 올바른지 생각 : 그것은 PL / SQL을의
나는 코드를 아래이, 당신은 한 번에 여러 행을 업데이트 할 필요가 특별히 경우 참고 매우 유효 이전의 모든 해답이 올바른지 생각 : 그것은 PL / SQL을의
DECLARE CURSOR myCursor IS Select contacts.BusinessCountry From contacts c WHERE c.Key = t.Key; --------------------------------------------------------------------- BEGIN FOR resultValue IN myCursor LOOP Update tblindiantime t Set CountryName=resultValue.BusinessCountry where t.key=resultValue.key; END LOOP; END;
나는이 도움이 될 바랍니다.
-
==============================
7.지금은 관리 스튜디오 2016 더 쉽습니다.
지금은 관리 스튜디오 2016 더 쉽습니다.
SQL Server Management Studio를 사용하여
또 다른 하나 개의 테이블에서 데이터를 복사하려면
1.Open 복사 할 열 및 테이블을 마우스 오른쪽 단추로 클릭 한 다음 디자인을 클릭하여로 복사 할 하나 테이블.
복사하고 그 열을 선택하려는 열이있는 테이블에 대한 탭을 2.Click.
3. 바탕 편집 메뉴에서 복사를 클릭합니다.
새 쿼리 편집기 창을 4.Open.
쿼리 편집기를 15. 오른쪽 단추로 클릭 한 다음 편집기에서 디자인 쿼리를 클릭합니다.
테이블 추가 대화 상자 6.In, 가까운 다음 테이블 추가 대화 상자를, 소스 및 대상 테이블을 선택 추가를 클릭합니다.
하여 쿼리 편집기, 변경 유형에 포인트의 빈 공간을 7.Right 단추로 클릭 한 다음 삽입 결과를 클릭합니다.
삽입의 선택 대상 테이블 대화 상자 결과 8.In, 대상 테이블을 선택합니다.
쿼리 디자이너의 상부 9.In, 소스 테이블 소스 항목을 클릭.
10. 쿼리 디자이너는 이제 INSERT 쿼리를 만들었습니다. 원래 쿼리 편집기 창에 쿼리를 배치하려면 확인을 클릭합니다.
11.Execute 쿼리는 대상 테이블에 소스 테이블에서 데이터를 삽입합니다.
추가 정보 https://docs.microsoft.com/en-us/sql/relational-databases/tables/copy-columns-from-one-table-to-another-database-engine
-
==============================
8.이것은 서로 다른 특성을 사용하여 해결 될 수있다.
이것은 서로 다른 특성을 사용하여 해결 될 수있다.
from https://stackoverflow.com/questions/3361768/copy-data-from-one-column-to-other-column-which-is-in-a-different-table by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] 비트 중 하나가 일치하는 경우 SQL에 두 개의 비트 마스크를 비교하는 것은 볼 수 (0) | 2020.06.22 |
---|---|
[SQL] 각 루프에 대한 SQL 서버 (0) | 2020.06.22 |
[SQL] 하루 그룹에 SQL 쿼리 (0) | 2020.06.22 |
[SQL] 정렬 평균은 무엇입니까? (0) | 2020.06.22 |
[SQL] 위도 경도에 따라 수행 반경 검색을위한 SQL 쿼리 (0) | 2020.06.22 |