IDENTITY (기능) (Transact-SQL)

적용 대상:SQL 서버Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsMicrosoft Fabric 의 웨어하우스Microsoft Fabric의 SQL 데이터베이스

절이 포함된 INTO table 문에서만 SELECTIDENTITY 테이블에 식별 열을 추가하세요. 비슷하지만, 이 함수는 IDENTITY 와 함께 사용하는 CREATE TABLEALTER TABLE속성과 IDENTITY 같지 않습니다.

참고

여러 테이블에서 사용할 수 있거나 테이블을 참조하지 않고 애플리케이션에서 호출할 수 있는 자동 증가 번호를 생성하려면 시퀀스 번호를 참조하세요.

Transact-SQL 구문 표기 규칙

구문

SQL Server, Azure SQL Database, Azure SQL Managed Instance, SQL database in Fabric:

IDENTITY ( data_type [ , seed , increment ] ) AS column_name  

패브릭 데이터 웨어하우스의 문법:

IDENTITY ( data_type ) AS column_name  

인수

data_type

정체성 열의 데이터 타입. 정체성 열의 유효한 데이터 타입은 비트 데이터 타입 또는 십진수 데이터 타입을 제외한 정 데이터 타입 카테고리의 모든 데이터 타입입니다.

테이블의 첫 번째 행에 할당할 정수 값입니다. 이후 각 행은 다음 항등 값(마지막 IDENTITY 값과 인크리먼트 값)을 받습니다. 시드인크리먼트를 지정하지 않으면 둘 다 기본적으로 1입니다.

증가

테이블의 연속된 행에 대해 시드 값에 더하는 정수 값입니다.

column_name

새 테이블에 삽입할 열 이름.

반환 형식

data_type과 같은 유형을 반환합니다.

설명

이 함수는 테이블에 열을 생성하기 때문에, 선택 리스트에서 해당 열의 이름을 다음 중 하나로 지정해야 합니다:

--(1)  
SELECT IDENTITY(int, 1,1) AS ID_Num  
INTO NewTable  
FROM OldTable;  

--(2)  
SELECT ID_Num = IDENTITY(int, 1, 1)  
INTO NewTable  
FROM OldTable;  

Microsoft Fabric Data Warehouse 내 지원

Fabric Data Warehouse에서는 시스템이 이 값을 자동으로 관리하여 고유한 정수를 제공하기 때문에 값을 increment 지정할 seed 수 없습니다. 문장에서 CREATE TABLE 열 정의를 할 때는 BIGINT IDENTITY. 자세한 내용은 (Transact-SQL) CREATE TABLE (부동산)과 Fabric Data Warehouse 항목을 참조하세요IDENTITY.IDENTITY

예제

다음 예시는 AdventureWorks2025 데이터베이스의 테이블에서 Contact 모든 행을 새 테이블 NewContact에 삽입합니다. 이 함수는 IDENTITY 식별 번호를 표에서 NewContact 1이 아닌 100에서 시작하도록 설정합니다.

USE AdventureWorks2022;  
GO  
IF OBJECT_ID (N'Person.NewContact', N'U') IS NOT NULL  
    DROP TABLE Person.NewContact;  
GO  
ALTER DATABASE AdventureWorks2022 SET RECOVERY BULK_LOGGED;  
GO  
SELECT  IDENTITY(smallint, 100, 1) AS ContactNum,  
        FirstName AS First,  
        LastName AS Last  
INTO Person.NewContact  
FROM Person.Person;  
GO  
ALTER DATABASE AdventureWorks2022 SET RECOVERY FULL;  
GO  
SELECT ContactNum, First, Last FROM Person.NewContact;  
GO