0 0

关于oracle。select max(id)的问题0

先在有一张oracle 10g的数据表,如下图:

然后有如下SQL语句:
1、


2、


请问:为什么第一种写法的查询结果不是最大值+1。因为以前都是像第一种写法那样获取最新id,但是现在第一种不能进行“+1”操作。
2013年11月28日 20:05
  • 大小: 19.6 KB
  • 大小: 10.6 KB
  • 大小: 10.9 KB

4个答案 按时间排序 按投票排序

0 0

采纳的答案

字符串,max(id),最大值为9,
可以用max(to_number(id)),这样就可以了

2013年11月29日 11:47
0 0

我实验了一下,你的ID不是number类型的,应该是字符类型的。

2013年11月29日 11:52
0 0

我建议你先运行这个select max(id) from tuser看看结果是什么。

2013年11月29日 11:48
0 0

我测试了一下,发现我得到的结果和你的不一样。不知道是什么原因,我再继续试试。

2013年11月29日 11:40

相关推荐

    Oracle中的select大全

    ### Oracle中的SELECT语句大全 在Oracle数据库管理中,`SELECT`语句是最常用也是最核心的操作之一。本文将深入探讨Oracle中`SELECT`语句的各种用法,并结合实际示例进行讲解,帮助读者全面掌握这一重要技能。 ####...

    Oracle数据库表序列ID自增生成器

    SELECT sequence_name.NEXTVAL INTO :new.id_column FROM DUAL; END; / ``` - `trigger_name`:触发器的名称。 - `table_name`:关联的表名。 - `id_column`:主键列的名称。 - `sequence_name.NEXTVAL`:获取序列...

    Oracle Max函数使用中出现的问题

    在给出的SQL语句中,开发者试图通过`SELECT MAX(RE_DATE) INTO V_RE_DATE FROM T_RECORDING WHERE ID ='100010010102'`来获取`T_RECORDING`表中ID为`100010010102`记录的`RE_DATE`字段的最大值,并将其赋值给变量`V_...

    oracle,sql面试题

    WHERE s.id IN (SELECT sc.student_id FROM SC sc GROUP BY sc.student_id HAVING COUNT(DISTINCT sc.course_id) = (SELECT COUNT(*) FROM C)); ``` 查询选修了至少 5 门以上的课程的学生: ```sql SELECT s....

    oracle查询重复数据方法

    Oracle 查询重复数据方法是数据库管理中非常重要的一个问题, Oracle 数据库提供了多种方法来查询和删除重复数据。下面我们将详细介绍几种常见的方法。 方法一:使用 Having 子句 第一种方法是使用 Having 子句来...

    oracle删除重复数据的几种方法

    create table test_temp as select * from test_0210 where id in (select max(id) from test_0210 group by name); truncate table test_0210; insert into test_0210 select * from test_temp; ``` 这种方法的优点...

    oracle日常巡检命令集合

    使用命令`select resource_name, max_utilization, initial_allocation, limit_value from v$resource_limit;`可以检查Oracle初始化文件中相关参数值。若`LIMIT_VALUE-MAX_UTILIZATION,则表明与`RESOURCE_NAME`相关...

    Oracle里抽取随机数的多种方法

    select max(id) from tmp_1; 接下来,我们设定一个生成随机数的种子: execute dbms_random.seed(12345678); 或者: execute dbms_random.seed(TO_CHAR(SYSDATE,'MM-DD-YYYY HH24:MI:SS')); 然后,我们可以使用...

    oracle 查看当前会话执行的sql语句

    where round(DISK_READS/EXECUTIONS) > (select max(round((DISK_READS/EXECUTIONS)/5)) from v$sqlarea where EXECUTIONS > 0) and EXECUTIONS > 0 and DISK_READS > 100 order by 1; -- 监控高行处理量SQL select...

    Oracle数据库学习日记

    ### Oracle数据库学习知识点详解 #### 一、基本使用 ##### 1.1 常用命令 **1.1.1 Connect/... - 示例: `select * from employees where (salary, commission) in (select max(salary), max(commission) from...

    VB 调用oracle 带返回值的存储过程

    SELECT MAX(user_id) INTO p_max_id FROM users; END get_max_user_id; / ``` 3. **调用存储过程**: 在VB中,我们需要创建一个OracleCommand对象,设置其CommandType为StoredProcedure,并指定存储过程的名称。...

    oracle、mysql数据库分页.pdf

    select max(id) from ( select top (@page-1)*@pagesize id from tablename order by id ) as t ) order by id; ``` 新版本的SQL Server可以使用`OFFSET/FETCH`来简化分页: ```sql select * from ...

    Oracle sequence 重置(失效恢复)

    在进行Oracle数据库移植或维护时,可能会遇到Sequence失效的问题。这种情况通常发生在数据迁移后,原有的Sequence不再与表中的最大值相匹配,导致新记录插入时出现ID冲突或者跳号的情况。为了解决这个问题,我们需要...

    oracle批量添加主键

    SELECT Id FROM jk_upczyd_max GROUP BY Id HAVING COUNT(Id) > 1 ) ``` 一旦找到重复的数据,可以使用`DELETE`语句删除这些记录,例如: ```sql DELETE FROM JK_ITEM_REC WHERE Id IN ( SELECT Id FROM JK_ITEM...

    Oracle技术关面试问题

    查询语句`select segment_name, tablespace_name, r.status, (initial_extent/1024) InitialExtent, (next_extent/1024) NextExtent, max_extents, v.curext CurExtent From dba_rollback_segs r, v$rollstat v ...

    oracle复杂查询练习题

    where a.id in (select max(b.id) from bookEnrol b group by b.bookid) and a.state = 1 and a.bookid = k.id; ``` 这条查询语句与方案一相似,但是它通过选取`bookEnrol`表中最大ID的记录来确定最近的借阅记录...

Global site tag (gtag.js) - Google Analytics