Computer >> 컴퓨터 >  >> 프로그램 작성 >> SQL Server

SQL Server의 업데이트 명령

SQL Server(Transact-SQL)에서 UPDATE 명령은 SQL Server 데이터베이스의 테이블에 있는 기존 레코드를 업데이트하는 데 사용됩니다. 기존 스타일을 업데이트하는지 아니면 다른 테이블의 데이터로 테이블을 업데이트하는지에 따라 UPDATE 명령에 대한 3가지 구문이 있습니다.

업데이트 명령 구문

SQL Server의 구문 업데이트 테이블

  UPD ATE bang 
SET cot1 = bieuthuc1,
cot2 = bieuthuc2,

[WHERE die u_kien];

구문은 SELECT 문을 결합하여 SQL Server에 있는 다른 테이블의 데이터로 테이블을 업데이트하는 것입니다.

  UPDATE board g1 
SET cot1 = (SELECT bieuthuc1
FROM bang2
WHERE dieu_kien)
[WHERE dieu_k ien];

또는 다른 테이블의 데이터로 테이블을 업데이트하는 다른 구문

  UPDATE three ng1 
SET bang1.cot = bang2.bieuthuc1
FROM bang1
INNER JOIN bang2
ON (bang1.cot1 = bang2.cot1)
[WHERE dieu_k ien];

변수 이름 또는 변수 값

cot1, cot2

업데이트할 열입니다.

bieuthuc1, bieuthuc2

cot1, cot2에 새 값을 지정해야 합니다. Cot1은 bieuthuc1의 값을 할당하고 cot2는 bieuthuc2의 값을 할당합니다.

dieu_kien 위치

옵션. 레코드를 업데이트하려면 조건이 충족되어야 합니다.

예:열 1개 업데이트

  UPDATE nhanvien 
SET ho = 'Johnson'
WHERE nhanv = 10;

이 UPDATE 명령은 테이블 직원의 성이 10인 경우 Johnson으로 업데이트합니다.

예:여러 열 업데이트

이는 하나의 UPDATE 명령으로 둘 이상의 열을 업데이트하는 예입니다.

  UPDATE  nhanvien 
SET ten = 'Kyle',
nhanvien_id = 14
WHERE ho = 'Johnso n';

여러 열을 업데이트하려면 열/값을 쉼표로 구분하면 됩니다.

위의 UPDATE 명령은 사람의 성이 Johnson인 경우 Kyle 및 nhanvien_id 이름을 14로 업데이트합니다.

예:다른 테이블의 데이터로 테이블 업데이트

MySQL에 있는 다른 테이블의 데이터로 테이블을 업데이트하는 예입니다.

  UPDATE staff 
SET ten = (SELECT ten
FROM danhba
WHERE danhba.ho = nhanvien.ho)
WHERE nhanvien_ id> 95;

위의 예는 nhanvien_id가 95보다 크면 테이블의 모든 레코드를 업데이트합니다. 직원의 성이 테이블에 있고 이름이 동일한 경우 이름이 목록이 테이블의 이름으로 복사됩니다.

이 UPDATE 명령은 아래 두 번째 구문으로 다시 작성할 수 있습니다.

  UPDATE anvien 
SET nhanvien.ten = danhba.ten
FROM nhanvien
INNER JOIN danhba
ON (nhanvien.ho = danhba.ho)
WHERE nhanvien _id> 95;