기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
UPDATE아마존의 명령 QLDB
중요
지원 종료 알림: 기존 고객은 2025년 7월 31일 지원이 종료될 QLDB 때까지 Amazon을 사용할 수 있습니다. 자세한 내용은 아마존 QLDB 원장을 Amazon Aurora SQL Postgre로 마이그레이션을
QLDBAmazon에서는 UPDATE
명령을 사용하여 문서 내 하나 이상의 요소 값을 수정합니다. 요소가 없으면 해당 요소가 삽입됩니다.
FROM(INSERTREMOVE, 또는SET) 명령문처럼 이 명령을 사용하여 문서 내에 특정 요소를 명시적으로 삽입하고 제거할 수도 있습니다.
참고
특정 테이블에서 이 PartiQL 명령을 실행하기 위한 액세스를 제어하는 방법을 알아보려면 Amazon에서 표준 권한 모드 시작하기 QLDB 섹션을 참조하세요.
구문
UPDATE-SET
문서 내 하나 이상의 요소를 업데이트합니다. 요소가 없으면 해당 요소가 삽입됩니다. 이는 FROM- SET 문과 의미상 동일합니다.
UPDATE
table_name
[ AStable_alias
] [ BYid_alias
] SETelement
=data
[,element
=data
, ... ] [ WHEREcondition
]
UPDATE-INSERT
기존 문서에 새 요소를 삽입합니다. 새 최상위 문서를 테이블에 삽입하려면 INSERT를 사용해야 합니다.
UPDATE
table_name
[ AStable_alias
] [ BYid_alias
] INSERT INTOelement
VALUEdata
[ ATkey_name
] [ WHEREcondition
]
UPDATE-REMOVE
문서 내의 기존 요소를 제거하거나 최상위 문서 전체를 제거합니다. 후자는 의미상 기존 DELETE 구문과 동일합니다.
UPDATE
table_name
[ AStable_alias
] [ BYid_alias
] REMOVEelement
[ WHEREcondition
]
파라미터
table_name
-
수정할 데이터가 포함된 사용자 테이블의 이름입니다. DML명령문은 기본 사용자 보기에서만 지원됩니다. 각 명령문은 단일 테이블에서만 실행할 수 있습니다.
- AS
table_alias
-
(선택 사항)업데이트할 테이블에 속하는 사용자 정의 별칭입니다.
AS
키워드는 선택 사항입니다. - BY
id_alias
-
(선택 사항)결과 집합에 있는 각 문서의
id
메타데이터 필드에 바인딩되는 사용자 정의 별칭입니다.BY
키워드를 사용하여UPDATE
절에서 별칭을 선언해야 합니다. 이는 기본 사용자 뷰를 쿼리하면서 문서 ID를 기준으로 필터링하려는 경우에 유용합니다. 자세한 내용은 BY 절을 사용하여 문서 ID 쿼리하기 단원을 참조하십시오. element
-
생성하거나 수정할 문서 요소입니다.
data
-
요소의 새 값입니다.
- AT
key_name
-
수정할 문서에 추가할 키 이름입니다. 키 이름과 함께 해당하는
VALUE
을 지정해야 합니다. 이는 문서 내 특정 위치에 새 값AT
을 삽입하는 데 필요합니다. - WHERE
condition
-
수정할 문서의 선택 기준입니다.
참고
WHERE
절을 생략하면 테이블의 모든 문서가 수정됩니다.
반환 값
documentId
- 업데이트한 각 문서의 고유 ID입니다.
예
문서의 필드를 업데이트합니다. 필드가 존재하지 않는 경우 해당 필드가 삽입됩니다.
UPDATE Person AS p SET p.LicenseNumber = 'HOLLOR123ZZ' WHERE p.GovId = '111-22-3333'
시스템에서 할당한 문서 id
메타데이터 필드를 기준으로 필터링합니다.
UPDATE Person AS p BY pid SET p.LicenseNumber = 'HOLLOR123ZZ' WHERE pid = '
documentId
'
문서 전체를 덮어씁니다.
UPDATE Person AS p SET p = { 'FirstName' : 'Rosemarie', 'LastName' : 'Holloway', 'DOB' : `1977-06-18T`, 'GovId' : '111-22-3333', 'GovIdType' : 'Driver License', 'Address' : '4637 Melrose Street, Ellensburg, WA, 98926' } WHERE p.GovId = '111-22-3333'
문서 내 Owners.SecondaryOwners
목록에 있는 첫 번째 요소의 PersonId
필드를 수정합니다.
UPDATE VehicleRegistration AS r SET r.Owners.SecondaryOwners[0].PersonId = 'abc123' WHERE r.VIN = '1N4AL11D75C109151'
{'Mileage':26500}
를 Vehicle
테이블의 문서 내에 최상위 이름-값 쌍으로 삽입합니다.
UPDATE Vehicle AS v INSERT INTO v VALUE 26500 AT 'Mileage' WHERE v.VIN = '1N4AL11D75C109151'
{'PersonId':'abc123'}
를 VehicleRegistration
테이블의 문서 Owners.SecondaryOwners
필드에 이름-값 쌍으로 추가합니다. 이 명령문이 유효하려면 Owners.SecondaryOwners
이 이미 존재하고 목록 데이터 유형이어야 합니다. 그렇지 않으면 INSERT INTO
절에 AT
키워드가 필요합니다.
UPDATE VehicleRegistration AS r INSERT INTO r.Owners.SecondaryOwners VALUE { 'PersonId' : 'abc123' } WHERE r.VIN = '1N4AL11D75C109151'
{'PersonId':'abc123'}
를 문서 내 기존 Owners.SecondaryOwners
목록의 첫 번째 요소로 삽입합니다.
UPDATE VehicleRegistration AS r INSERT INTO r.Owners.SecondaryOwners VALUE {'PersonId' : 'abc123'} AT 0 WHERE r.VIN = '1N4AL11D75C109151'
문서 내 기존 Owners.SecondaryOwners
목록에 여러 개의 이름-값 쌍을 추가합니다.
UPDATE VehicleRegistration AS r INSERT INTO r.Owners.SecondaryOwners << {'PersonId' : 'abc123'}, {'PersonId' : 'def456'} >> WHERE r.VIN = '1N4AL11D75C109151'
문서 내 기존 요소를 제거합니다.
UPDATE Person AS p REMOVE p.Address WHERE p.GovId = '111-22-3333'
테이블에서 전체 문서를 제거합니다.
UPDATE Person AS p REMOVE p WHERE p.GovId = '111-22-3333'
VehicleRegistration
테이블의 문서 내 Owners.SecondaryOwners
목록의 첫 번째 요소를 제거합니다.
UPDATE VehicleRegistration AS r REMOVE r.Owners.SecondaryOwners[0] WHERE r.VIN = '1N4AL11D75C109151'
드라이버를 사용하여 프로그래밍 방식으로 실행
드라이버를 사용하여 이 명령문을 프로그래밍 방식으로 실행하는 방법을 알아보려면 QLDB 드라이버 시작하기에서 다음 자습서를 참조하십시오.
-
Java: 빠른 시작 자습서 | Cookbook 참조
-
.NET: 빠른 시작 자습서 | Cookbook 참조
-
Go: 빠른 시작 자습서 | Cookbook 참조
-
Node.js: 빠른 시작 자습서 | Cookbook 참조
-
Python: 빠른 시작 자습서 | Cookbook 참조