gpt4 book ai didi

sql - tsql select语句中的自增子查询

转载 作者:行者123 更新时间:2023-12-03 21:58:05 25 4
gpt4 key购买 nike

我有一个 T-SQL select 语句,我想自动增加其中的一列(数据库中不存在)

select dbo.a, dbo.b, dbo.c, select @d:=1; @increment:=@increment+1 AS d

这可能吗?

最佳答案

假设您使用的是 SQL 2005 或更高版本:

SELECT dbo.a, dbo.b, dbo.c, ROW_NUMBER() OVER(ORDER BY GETDATE()) AS d

对从 DB 返回的行进行排序。如果你想指定一个订单,你可以这样做:
SELECT dbo.a, dbo.b, dbo.c, ROW_NUMBER() OVER(ORDER BY dbo.a) AS d

对于 SQL 2000 及更早版本,您需要一个唯一的值来排序:
SELECT dbo.a, dbo.b, dbo.c, (SELECT COUNT(*) FROM dbo d2 WHERE d2.a <= dbo.a) AS d
FROM dbo

或者如果您不需要单个 SELECT:
SELECT IDENTITY(int,1,1) ID, dbo.a, dbo.b, dbo.c
INTO #Temp
FROM dbo

SELECT * FROM #Temp

关于sql - tsql select语句中的自增子查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8932412/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com