如何用SQL语句查找一个序列的最大编号

如何用SQL语句查找一个序列的最大编号,第1张

通过rownum实现即可。 sql:select rownum , from tablename where 条件语句。 解释:rownum是隐藏的,查询结果默认从1开始编号,所以肯定会是自然编号的,有多少条,编号就到多少。

ORACLE/DB2访问SEQUENCE如下

SELECT SEQ_SENT_MESSAGECURRVAL FROM DUAL

SELECT SEQ_SENT_MESSAGENEXTVAL from dual

你的MYSQL多少版本的呀我记得我读书那阵子MYSQL貌似没有序列

建表的时候应该可以自定义一个自增长字段的

create table tab (id int not null primary key auto_increment)

可以建立另外一个表,把最大值序列存放在一个字段中,如果增加则最大值+1,删除则最大值-1,这样的话,你的id肯定是连续的。

eg:

t1:(id int,……)你存放留言板内容的表

t2:(maxid int,class varchar)这个表的maxid就存放你留言板中当前最大值+1的值,class用来区分maxid用于那个表。

1、新增记录:只要取出t2表中的相关maxid,将取道的最大值将留言板内容新增到t1表中,增加完后再update t2表中的maxid=maxid+1

2、删除记录:先删除t1表记录,然后update t2表中的maxid=maxid-1

3、修改记录:直接修改t1表,不需要处理t2表中的maxid。

这样t1表中的id永远是连续的。

表的自增量不会因为你删除记录自动-1,他只会记录你使用过的最大值继续计数。除非你把表删除重建。

以上就是关于如何用SQL语句查找一个序列的最大编号全部的内容,包括:如何用SQL语句查找一个序列的最大编号、sql取序列最大值、关于提取Sql Server 的自动增量序列等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9743619.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存