Delete (SQL): 두 판 사이의 차이
내용 삭제됨 내용 추가됨
잔글 →외부 링크 |
잔글 용어 수정, 스타일 적용 |
||
1번째 줄:
구조화 질의어([[SQL]])에서, '''DELETE''' 문은 [[테이블 (데이터베이스)|테이블]]에서
==사용법==
▲<code>DELETE</code> 문은 다음 구문을 따른다:
:'''<code>DELETE</code>''' <code>FROM</code> ''테이블_이름'' ['''<code>WHERE</code>''' 조건]
[[Where (SQL)|<code>WHERE</code> 조건]]에 맞는 모든 행은 테이블에서 삭제됩니다. <code>WHERE</code> 절을 생략하면, 모든 행을
<code>DELETE</code> 문을 실행하는 것은 다른 테이블을 삭제하게끔 실행하는 [[데이터베이스 트리거|트리거]]가 발생할 수 있습니다. 예를 들면, 두 테이블이 [[외래 키]]로 연결되어 있고 행이 참조된 테이블에서 삭제된다면, [[참조 무결성]]이 유지되도록 참조하고 있는 테이블에도 공통적으로
<!-- Todo: foreign keys, transactions, cascading -->
==예제==
* ''pies'' 테이블에서 ''flavour'' 열과 ''Lemon Meringue'' 열에서 행이 같으면
<source lang="sql">
DELETE FROM pies WHERE flavour='Lemon Meringue';
</source>
* ''trees'' 테이블에서, ''height'' 값이 80보다 작으면 행을
<source lang="sql">
DELETE FROM trees WHERE height < 80;
</source>
* ''mytable''에서 모든 행을
<source lang="sql">
DELETE FROM mytable;
</source>
* ''mytable''에서 where 조건에 서브쿼리를 사용해 행을
<source lang="sql">
DELETE FROM mytable WHERE id IN (SELECT id FROM mytable2)
</source>
* ''mytable''에서 값 목록을 사용하여 행을
<source lang="sql">
DELETE FROM mytable WHERE id IN (value1, value2, value3, value4, value5)
|