select max(to_number(userid))+1 from table_name; 不知道行不行,试一下。
CREATE TABLE TEST(USREID CHAR(10)); INSERT INTO TEST VALUES('1'); INSERT INTO TEST VALUES('2'); INSERT INTO TEST VALUES('3'); INSERT INTO TEST VALUES('442'); INSERT INTO TEST VALUES('3467'); SELECT TO_NUMBER(MAX(USREID)) FROM TEST; ------------------------------------------------------------ TO_NUMBER(MAX(USREID)) 443SELECT MAX(TO_NUMBER(USREID)) FROM TEST; ------------------------------------------------------------- TO_NUMBER(MAX(USREID)) 3468
现转化为数值再去最大的 SELECT MAX(TO_NUMBER(USREID)) FROM TEST;
上面SELECT 语句少加了1,与结果不符合,修改下 ---- CREATE TABLE TEST(USREID CHAR(10)); INSERT INTO TEST VALUES('1'); INSERT INTO TEST VALUES('2'); INSERT INTO TEST VALUES('3'); INSERT INTO TEST VALUES('442'); INSERT INTO TEST VALUES('3467'); SELECT TO_NUMBER(MAX(USREID))+1 FROM TEST; ------------------------------------------------------------ TO_NUMBER(MAX(USREID)) 443SELECT MAX(TO_NUMBER(USREID))+1 FROM TEST; ------------------------------------------------------------- TO_NUMBER(MAX(USREID)) 3468
不知道行不行,试一下。
INSERT INTO TEST VALUES('1');
INSERT INTO TEST VALUES('2');
INSERT INTO TEST VALUES('3');
INSERT INTO TEST VALUES('442');
INSERT INTO TEST VALUES('3467');
SELECT TO_NUMBER(MAX(USREID)) FROM TEST;
------------------------------------------------------------
TO_NUMBER(MAX(USREID))
443SELECT MAX(TO_NUMBER(USREID)) FROM TEST;
-------------------------------------------------------------
TO_NUMBER(MAX(USREID))
3468
SELECT MAX(TO_NUMBER(USREID)) FROM TEST;
----
CREATE TABLE TEST(USREID CHAR(10));
INSERT INTO TEST VALUES('1');
INSERT INTO TEST VALUES('2');
INSERT INTO TEST VALUES('3');
INSERT INTO TEST VALUES('442');
INSERT INTO TEST VALUES('3467');
SELECT TO_NUMBER(MAX(USREID))+1 FROM TEST;
------------------------------------------------------------
TO_NUMBER(MAX(USREID))
443SELECT MAX(TO_NUMBER(USREID))+1 FROM TEST;
-------------------------------------------------------------
TO_NUMBER(MAX(USREID))
3468
1、设定单独表,在一个事务中先update字段自加1,然后再select
2、使用Oracle中的Sequence
3、Java中可以使用同步方式对数据表进行select 最大值+1方式