적용 대상:SQL 서버
Azure SQL Database
Azure SQL Managed Instance
Microsoft Fabric
의 웨어하우스Microsoft Fabric의 SQL 데이터베이스
IDENTITYINTO SELECT 절이 포함된 문에서 새 테이블에 식별 열을 삽입할 때만 사용됩니다. 비록 비슷하지만, 이 IDENTITY 함수는 와 IDENTITY에 CREATE TABLE 사용되는 성질이 아닙니다ALTER TABLE.
참고
여러 테이블에서 사용할 수 있거나 테이블을 참조하지 않고 애플리케이션에서 호출할 수 있는 자동으로 증가하는 번호를 만들려면 시퀀스 번호를 참조하세요.
구문
IDENTITY (data_type [ , seed , increment ] ) AS column_name
인수
data_type
정체성 열의 데이터 타입. ID 열의 유효한 데이터 형식은 bit 데이터 형식을 제외한 정수 데이터 형식 범주의 모든 데이터 형식 또는 decimal 데이터 형식입니다.
씨
테이블의 첫 번째 행에 정수 값을 할당합니다. 후속 행에는 각각 마지막 IDENTITY 값에 증가값을 더한 것과 같은 다음 ID 값이 할당됩니다. 초기값 및 증가값을 모두 지정하지 않으면 기본값은 모두 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;
Fabric Data Warehouse에서는 또는 seed를 지정할 increment 수 없는데, 이 값들은 자동으로 관리되어 고유한 정수를 제공하기 때문입니다.
BIGINT IDENTITY 는 문장에서 CREATE TABLE 열 정의에 필요한 전부입니다. 자세한 내용은 패브릭 데이터 웨어하우스의CREATE TABLE (Transact-SQL) IDENTITY (Property) 및 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