SQL DELETE 문
SQL DELETE 문
DELETE 문은 WHERE 절의 조건(predicate)을 만족하는 문서를 삭제해요. WHERE 절을 지정하지 않으면 모든 문서가 삭제돼요.
출처: 문서
본문
설정 (Setting)
DELETE 문은 기본적으로 비활성화되어 있어요. SQL에서 DELETE 기능을 활성화하려면 다음 요청을 보내서 구성을 업데이트해야 해요.
PUT _plugins/_query/settings
{
"transient": {
"plugins.sql.delete.enabled": "true"
}
}
문법 (Syntax)
Rule singleDeleteStatement:
예시 (Example)
SQL 질의:
DELETE FROM accounts
WHERE age > 30
Explain:
{
"size" : 1000,
"query" : {
"bool" : {
"must" : [
{
"range" : {
"age" : {
"from" : 30,
"to" : null,
"include_lower" : false,
"include_upper" : true,
"boost" : 1.0
}
}
}
],
"adjust_pure_negative" : true,
"boost" : 1.0
}
},
"_source" : false
}
질의는 다음 결과를 반환해요.
{
"schema" : [
{
"name" : "deleted_rows",
"type" : "long"
}
],
"total" : 1,
"datarows" : [
[
3
]
],
"size" : 1,
"status" : 200
}
datarows 필드는 삭제된 문서의 수를 보여줘요.