精华内容
下载资源
问答
  • Oracle需要更新套组的大单位, 规则是取第一个学员(套组ID最小)的单位信息。Oracle需要更新套组的大单位, 规则是取第一个学员(套组ID最小)的单位信息。采用按照SUITEID排序取第一条方法。UPDATE sim_big_suite u ...

    Oracle需要更新套组的大单位, 规则是取第一个学员(套组ID最小)的单位信息。

    Oracle需要更新套组的大单位, 规则是取第一个学员(套组ID最小)的单位信息。

    采用按照SUITEID排序取第一条方法。

    UPDATE sim_big_suite u SET u.org_code = (

    SELECT SUBSTR(x.pilot_unit,1,4) FROM(

    SELECT n.* FROM sim_student_assign n WHERE

    n.big_suite_no = 192 AND

    --u.big_suite_no = n.big_suite_no AND

    n.ac_type_code = 14

    AND n.fixed_year = '2013上半年' AND n.train_com = 1001 AND n.position = 'L'

    ORDER BY n.suite_id

    )x WHERE ROWNUM = 1

    )WHERE u.ac_type_code = 14 AND u.fixed_year = '2013上半年' AND u.train_com = 1001;

    logo.gif, 本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉 本文系统来源:php中文网

    展开全文
  • ORACLE中的查询结果只取第一

    千次阅读 2020-03-12 18:39:17
    简单易学的方式: 原有的SQL不需要变化,需在原来的SQL外加一层查询条件即可: SELECT * FROM ( SELECT * FROM 表名 ) WHERE ROWNUM = 1 括号中即为查询所有的...将SQL放入括号中 即可获取到结果集中的第一条 ...

    简单易学的方式: 原有的SQL不需要变化,只需在原来的SQL外加一层查询条件即可:

    SELECT * FROM ( SELECT * FROM 表名 ) WHERE ROWNUM = 1
    

    括号中即为查询所有的SQL

    将SQL放入括号中 即可获取到结果集中的第一条

    展开全文
  • Oracle分组取第一条数据

    千次阅读 2014-12-11 12:03:24
    对多数据进行分组排序后每组第一条记录   SQL代码: SELECT*  FROM(SELECT ROW_NUMBER() OVER (PARTITION BY ORDER BYDESC)LEV,.* FROM)   WHERE LEV =1   ORDER BYDESC  --分组列 -- 排序列 --...

    对多数据进行分组排序后取每组第一条记录

     

    SQL代码:
    SELECT*   
    FROM(SELECT ROW_NUMBER() OVER (PARTITION BY<PK_FINANCE_ACCOUNT_1> ORDER BY<amassdate>DESC)LEV,<hx_amass_liquid>.* FROM<hx_amass_liquid>)  
     WHERE LEV =1  
     ORDER BY<PK_FINANCE_ACCOUNT_2>DESC  

    <PK_FINANCE_ACCOUNT_1> --分组列
    <amassdate> -- 排序列
    <hx_amass_liquid> -- 表名
    <PK_FINANCE_ACCOUNT_2> -- 排序列
    注:<hx_amass_liquid>.* --一定要有表名,否则会报“缺失表达式”错误

    分组时不仅想取每组的第一条记录,还想取每组共有几条记录


    SELECT *
    FROM (
    SELECT ROW_NUMBER() OVER(PARTITION BY PK_FINANCE_ACCOUNT ORDER BYamassdate DESC) LEV,
                count(0) over(partition by PK_FINANCE_ACCOUNT) cnt,
                hx_amass_liquid.*
     FROM
     hx_amass_liquid
    )
     WHERE LEV = 1
     ORDER BY PK_FINANCE_ACCOUNT DESC

    展开全文
  • Oracle取查询结果第一条记录SQL

    千次阅读 2014-07-18 15:02:13
    Oracle取查询结果第一条记录SQL select * from ( select e.id,e.filename,e.status,e.version,e.url,e.file_type, (select max(e.version) from eig_upload e where e.file_type = 1 and e.game_id = '...

    Oracle取查询结果第一条记录SQL


    select * from (  select e.id,e.filename,e.status,e.version,e.url,e.file_type,   (select max(e.version) from eig_upload e   where e.file_type = 1  and e.game_id = '4028822f46d66cf70146d66fe69e0002') as times   from eig_upload e   where e.file_type = 1  and e.game_id = '4028822f46d66cf70146d66fe69e0002'  and e.status = 1  order by e.update_time DESC )   where rownum = 1 


    展开全文
  • SELECT  * from (  SELECT ndj.zyjsnr,  ndj.xmid,  ROW_NUMBER () over (  partition by ndj.xmid order by ndj.jhnf DESC, ... ) rn FROM T_ndjh ndj WHERE ndj.... ) where rn = 1 
  • Oracle排序取第一

    千次阅读 2017-08-09 16:03:08
    select * from (select * from <table> order by <key> desc) where rownum=1;
  • oracle分组每组第一条数据

    千次阅读 2014-08-12 18:44:38
    oracle分组每组第一条数据
  • Oracle 分组排序取第一

    千次阅读 2017-06-15 16:15:16
    Oracle 分组排序取第一
  • 场景:当我们要查询记录,需要对记录分组并且根据排序第一条数据。 栗子: create table order(--订单表 id number, orderType varchar2(2),--订单类型 orderNo varchar2(20),--订单号 amt number(2,2),-...
  • 今天突然客户提出一需求,要查一下APP所有客户的最近一次登录记录,因为数据库使用的是oracle有点懵逼,首先分析了一下需求,按用户id分组,按登录时间降序,然后分组的第一条记录就可以搞定了。经过一顿...
  • 我有一表student(id,name,department,age,score)。我想找到每部门中拥有最高...在Oracle子查询中排序后得到第一行select * from student s1where s1.id in(select s2.id from student s2where s2.departm...
  • Oracle取查询结果数据的第一条记录SQL: select * from (select * from <table> order by <key>) where rownum=1; select * from (select * from <table> order by <key> desc) where ...
  • oracle 分组取第一行数据 SELECT * FROM ( SELECT ROW_NUMBER() OVER(PARTITION BY x ORDER BY y DESC) rn, t.* FROM test1 t ) WHERE rn = 1; 查找oracle 执行的语句 select t.*from v$sqlarea t where...
  • oracle 取第一条数据

    千次阅读 2013-09-06 17:45:27
    /* 分组排序取第一条数据*/ SELECT * FROM (SELECT ROW_NUMBER() OVER(PARTITION BY taskbreakid ORDER BY responsedate DESC) LEV, r.*  -- select r.*   FROM tablename r   WHERE...
  • Oracle两表关联,只取B表的第一条记录 前言   A表、B表两表关联,关联出来的结果里B表有不止一条,需求是只要B表结果中的某一条(按某字段排序)。   首先想到了直接写带排序的子查询去匹配外围的值,从这个结果...
  • 最近有业务需求(springboot项目集合mybatis):需要查询分组后,每组的第一条数据(oracle数据库),可以在业务代码中实现,但是过于繁琐,后来查阅oracle的函数,得出仅仅在sql中即可实现,非常简洁,简化...
  • 注意尽量不要用*,改用必须用的字段名 select t.* from (select a.*, row_number() over(partition by a.分组字段 order by a.排序字段 desc) rw from 表名 a) t where t.rw = 1  ...
  • Oracle分组后对分组内容重复的以另一列排序后取第一个 语句 select * from( select a.grep, row_number() over (partition by a.grep order by a.create_time desc nulls last) row_num from test a ) aa where...
  • //只取查询出来结果集中的第一条数据 select *from (select * from 表明 order by id desc ) where rownum=1
  • oracle 分组后取每组第一条数据: 数据格式 ...分组取第一条的效果 sql: SELECT * FROM (SELECT ROW_NUMBER() OVER(PARTITION BY x ORDER BY y DESC) rn, test1.* FROM test1) WHERE rn = 1 ; ...
  • Oracle 分组后每组的第一条记录

    千次阅读 2017-11-24 10:16:16
    Oracle 分组后每组的第一条记录
  • 需求:先分组,再按时间排序,最后分组第一条 利用oracle的开窗函数可以实现 以下是模板sql ,自行替换 select t.* from (select a.*, row_number() over(partition by 需要分组的字段 order by 更新时间 ...
  • 结合order by和rownum来做: --第一条 select * from bdatag_tag order by tag_id where rownum = 1; --最后一条 select * from bdatag_tag order by tag_id desc where rownum = 1;
  • select to_char(trunc(sysdate,'MONTH'),'yyyy-mm-dd') First_DayOfMonth ,to_char(last_day(trunc(sysdate,'MONTH')),'yyyy-mm-dd') Last_DayOfMonth from dual;

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 113,311
精华内容 45,324
关键字:

oracle只取第一个结果