3

似乎有人问过类似的问题,其他数据库产品(尤其是 MS-SQL)存在解决方案,但它们不适用于 sybase,所以我问这个问题。

我有一个简单的选择语句,我想得到一个包含和递增计数器的列以及结果。

例如:

counter  data1  data2
0        aa     AA
1        bb     BB
2        cc     CC

有没有办法在单个语句中执行此操作,而不是将其放入临时表并在其上运行游标?

4

2 回答 2

3

您还需要创建一个临时表,但不需要任何游标,只需这样做:

select counter = identity(10), data1, data2 into #t1 from tablename

select * from #t1
drop table #t1
于 2012-01-09T09:43:02.603 回答
3

根据您使用的 Sybase 版本,您还可以查看类似NUMBER()or的函数ROW_NUMBER()

于 2012-01-09T22:10:59.913 回答