关于自动生成序号的问题!!!

alexela 2004-10-19 03:30:35
我想对生成的结果集进行标识,例如如果生成

col1 col2 col3
----------------
c11 c12 c13
c21 c22 c23
c31 c32 c33

显示出来的应该是
id col1 col2 col3
----------------
1 c11 c12 c13
2 c21 c22 c23
3 c31 c32 c33

其中ID是自动生成的唯一ID

我使用了序列,select seq.nextval,col1,col2,col3 from test,结果是正常的,可是一旦我使用group by 语句后,SQL Explorer老提示‘此处不应该有序列’(我想对某个字段分组后的结果进行排序),请问高手这个SQL该怎么写??!!

多谢了!!!
...全文
283 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
alexela 2004-10-19
  • 打赏
  • 举报
回复
ok, bzszp(SongZip) , 非常感谢! rownum虽不能解决全局问题,但是我用同样的方法使用sequence代替了。马上给各位加分
bzszp 2004-10-19
  • 打赏
  • 举报
回复
example:

insert into class_new
select rownum||'class' class_id,t.* from
(select class_name,class_addr,.. from students group by class_name,class_addr,..) t;
alexela 2004-10-19
  • 打赏
  • 举报
回复
bluelamb, 使用max(rownum)还是不能保证全局唯一,只是当前结果集才有效啊!
alexela 2004-10-19
  • 打赏
  • 举报
回复
有一张大表,例如班级的学生信息,既包括了学生个人信息,又包括了学生所属的班级信息,多个学生在同一个班级,那么这些学生的班级信息都是相同的,我现在需要从这张大表里提取出班级信息组成一个新表,而新表中班级信息是不允许重复的,那么我必须要用group by 来归类这些班级信息(例如字段‘班级名称’),而新表中我需要根据新的班级信息创建编号,而这个编号不是通过自动编号字段来定义的,而是一般的char,通过SQL语句来生成。
这就是具体要求:) 谢谢
bluelamb 2004-10-19
  • 打赏
  • 举报
回复
select rownum,col1,col2,col3 from test
select max(rownum),col1,col2,col3 from test group by col1,col2,col3
bzszp 2004-10-19
  • 打赏
  • 举报
回复
insert into tb_B select rownum,tb_A.* from tb_A;

说说你的具体要求,sql语句应该可以完成的
alexela 2004-10-19
  • 打赏
  • 举报
回复
并且,我需要的是在group by 或者带有distinct的语句生成后的结果集里加序号! 也就是某个字段值可能不唯一,我要以其唯一的值来生成结果集,这里我们假设与该字段相关的其他字段在该字段相同的情况下也分别是相同的。
alexela 2004-10-19
  • 打赏
  • 举报
回复
多谢两位, 这条语句生成的id只是在当前结果集有效,我希望的是在整个数据库中有效,因为选择后的结果集是要插入到另一张表中的。 可否再赐教!?
bzszp 2004-10-19
  • 打赏
  • 举报
回复
select rownum id,col1,col2,col3 from test;
LGQDUCKY 2004-10-19
  • 打赏
  • 举报
回复
select rownum,col1,col2,col3 from test
内容概要:本文针对无刷直流电机驱动的电子机械制动(EMB)执行器,建立了考虑Stribeck摩擦特性的非线性耦合动力学模型,并在Simulink环境中完成了系统级仿真分析。研究综合集成了电机动力学、齿轮传动机构与制动执行机构的动力学特性,构建了高保真的机电一体化系统模型。重点引入Stribeck摩擦模型以精确描述低速工况下执行器内部存在的静摩擦、粘滞摩擦与库仑摩擦之间的过渡行为,有效提升了系统在启停、反向运动等瞬态过程中的动态响应仿真精度。通过多工况仿真验证了模型的有效性,能够准确反映摩擦引起的爬行、滞后与定位误差等非线性现象,为EMB系统的高性能控制算法设计(如摩擦补偿、滑模控制)与结构优化提供了高可信度的仿真平台。; 适合人群:从事汽车电子制动系统、电机驱动控制、机电系统建模与仿真研究的研究生、科研人员及工程技术人员,需具备扎实的机械动力学、自动控制理论基础和MATLAB/Simulink仿真能力。; 使用场景及目标:①用于高精度电子机械制动系统的设计验证与性能预测;②为消除摩擦非线性影响的先进控制策略(如自适应控制、智能控制)提供精确的被控对象模型;③深入探究Stribeck摩擦等非线性因素对系统动态性能(如响应延迟、稳态误差)的作用机理; 阅读建议:读者应结合提供的Simulink模型文件,深入剖析Stribeck摩擦模块的数学实现与参数辨识方法,建议通过改变输入指令(如阶跃、正弦)和负载条件进行对比仿真,以直观理解非线性摩擦对系统动态特性的影响。

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧