

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# VALUES 절
<a name="VALUES"></a>

VALUES 절은 테이블을 참조할 필요 없이 쿼리에 직접 행 값 집합을 제공하는 데 사용됩니다.

VALUES 절은 다음 시나리오에서 사용할 수 있습니다.
+ INSERT INTO 문에서 VALUES 절을 사용하여 테이블에 삽입되는 새 행의 값을 지정할 수 있습니다.
+ 테이블을 참조할 필요 없이 VALUES 절을 단독으로 사용하여 임시 결과 집합 또는 인라인 테이블을 생성할 수 있습니다.
+ VALUES 절을 WHERE, ORDER BY 또는 LIMIT과 같은 다른 SQL 절과 결합하여 결과 집합의 행을 필터링, 정렬 또는 제한할 수 있습니다.

이 절은 영구 테이블을 생성하거나 참조할 필요 없이 SQL 문에 직접 작은 데이터 세트를 삽입, 쿼리 또는 조작해야 할 때 특히 유용합니다. 이를 통해 열 이름과 각 행에 해당하는 값을 정의할 수 있으므로 별도의 테이블을 관리하는 오버헤드 없이 임시 결과 세트를 생성하거나 데이터를 즉시 삽입할 수 있습니다.

## 구문
<a name="VALUES-syntax"></a>

```
VALUES ( expression [ , ... ] ) [ table_alias ]
```

## 파라미터
<a name="VALUES-parameters"></a>

 *expression*   
값을 생성하는 하나 이상의 값, 연산자 및 SQL 함수의 조합을 지정하는 표현식입니다.

 *테이블\$1별칭*   
선택적 열 이름 목록이 있는 임시 이름을 지정하는 별칭입니다.

## 예제
<a name="VALUES-example"></a>

다음 예제에서는 두 개의 열, `col1` 및가 있는 인라인 테이블, 임시 테이블과 유사한 결과 세트를 생성합니다`col2`. 결과 집합의 단일 행에는 `1`각각 `"one"` 및 값이 포함됩니다. 쿼리 `SELECT * FROM` 부분은이 임시 결과 집합에서 모든 열과 행을 검색하기만 하면 됩니다. VALUES 절이 열 이름을 명시적으로 지정하지 않기 때문에 열 이름(`col1` 및 `col2`)은 데이터베이스 시스템에서 자동으로 생성됩니다.

```
SELECT * FROM VALUES ("one", 1);
+----+----+
|col1|col2|
+----+----+
| one|   1|
+----+----+
```

사용자 지정 열 이름을 정의하려면 다음과 같이 VALUES 절 뒤에 AS 절을 사용하여 정의할 수 있습니다.

```
SELECT * FROM (VALUES ("one", 1)) AS my_table (name, id);
+------+----+
| name | id |
+------+----+
| one  |  1 |
+------+----+
```

이렇게 하면 기본 `name` 및 `id`대신 열 이름이 `col1` 및 인 임시 결과 집합이 생성됩니다`col2`.