sql 如何得到最后一条的记录

来源:百度知道 编辑:UC知道 时间:2024/05/22 05:46:59
某个表,没有主键,按照插入顺序自然排序,想得到最后一条记录的话,用什么语句或者功能可以完成?
没有这个[id自增的字段] ,如果有的话那不简单了吗,问题的关键是不能排序,因为需要的是按照插入数据的顺序得到最后一条的记录,我听说需要用游标,指针什么的东西才能实现,有没有知道的?

  实现思路:如果是正序的取出最后一条,那么就是倒叙取出第一条。所以排下序,之后取出第一条就可以了。

  1. sql:select top 1 username from tablename order by username desc ;

    以上就是取出来第一条记录,如果想取出来最后一条:

  2. sql:select top 1 username from tablename order by username asc;

select top 1 * from [表名] order by [id自增的字段] desc

就是用数据表里的自增字段进行降序排列,取第一个就可以来。

create table t1 (c1 int,c2 char(10))

declare @c1 int,@c2 char(10)

declare cc cursor for select * from 表
open cc
fetch last from cc into @c1,@c2
close cc
deallocate cc

如果表里面有自增量ID的话你可以试一下select * from 表名 where id=(select max(id) from 表名)

同意 催眠showing.你这是自己难为自己,不可为而为之
简单问题复杂化

你想根据什么来获取最后一条记录。。
可以利用时间,ID等。。。
如果你没设这样的条件,跟你讲句,改数据库吧。建的不规范

SELECT IDENT_CURRENT(TableName) AS id