Identity 函数只能用在SELECT INTO语句中,将标识列插入表中,并按自定义规则
进行标序,以此序列为基准可以选择特定行,如实现查询第3-5行、奇数行、偶数行等功能,弥补TOP 语句的不足。
语法:IDENTITY ( data_type [ , seed , increment ] )
1、data_type:新插入列的数据类型,多选用INT;
2、seed:标识列的初始种子值,如果不指定,默认为1;
3、increment:标识列的增长步长,如果不指定,默认为1。
1、在Name表中插入标识列,以1为种子值,1为步长。
USE [SQL PRACTICE]
GO
SELECT [FullName] 姓名, IDENTITY(INT) 序号 INTO #TEMP FROM [dbo].[Name]
SELECT * FROM #TEMP
DROP TABLE #TEMP
2、查询第3-5行:在Name表中插入标识列,选取序号为3-5的行。
查询结果显示:Jordan、Wade、Durant
USE [SQL PRACTICE]
GO
SELECT [FullName] 姓名, IDENTITY(INT) 序号 INTO #TEMP FROM [dbo].[Name]
SELECT 姓名 FROM #TEMP
WHERE 序号 BETWEEN 3 AND 5
DROP TABLE #TEMP
3、查询奇数行:在标识列中,以“序号%2”不等于0来筛选奇数行。
查询结果显示:James、Jordan、Durant
USE [SQL PRACTICE]
GO
SELECT [FullName] 姓名, IDENTITY(INT) 序号 INTO #TEMP FROM [dbo].[Name]
SELECT 姓名 FROM #TEMP
WHERE 序号%2<>0-----选择奇数行
DROP TABLE #TEMP
4、查询偶数行:在标识列中,以“序号%2”等于0来筛选偶数行。
USE [SQL PRACTICE]
GO
SELECT [FullName] 姓名, IDENTITY(INT) 序号 INTO #TEMP FROM [dbo].[Name]
SELECT 姓名 FROM #TEMP
WHERE 序号%2=0-----选择偶数行
DROP TABLE #TEMP