sql 语句怎么写?合并花圈的两条

Tony_xiaofeng 2013-05-09 04:55:41
...全文
153 点赞 收藏 7
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
raymonshi 2013-05-10
select ageup,agedown,personup,persondown,teacherflag,max(旷代),max(旷正) from 表名 
 
group by ageup,agedown,personup,persondown,teacherflag
回复
xiongwenhua365 2013-05-10
楼主应该是这个意思吧,

SQL> select * from test;

        ID NAME          CHINESE    ENGLISH
---------- ---------- ---------- ----------
         1 a                  90
         1 a                             80
         2 b                  70
         2 b                             70
         3 c                 100         90
         4 d
         4 d

7 rows selected.

SQL> select id,name,sum(chinese)/count(chinese) chinese,sum(english)/count(english) english from test group by id,name order by 1;

        ID NAME          CHINESE    ENGLISH
---------- ---------- ---------- ----------
         1 a                  90         80
         2 b                  70         70
         3 c                 100         90
         4 d

SQL> 
回复
vanjayhsu 2013-05-10
合并是有很多这样的记录合并还是只有这两条需要合并,合并的规则是否就是ageup,agedown,personup,persondown,teacherflag这5个字段相同的,取旷代和旷正的最大值?
回复
dyboy0822 2013-05-09
update 表名 set 矿正 = (select 矿正 from 表名 where ageup = 1 and agedown = 10 and personup=1 and persondown=10 and teacherflag=1 and 矿正 is not null) delete 表名 where ageup = 1 and agedown = 10 and personup=1 and persondown=10 and teacherflag=1 and 矿正 is not null 不过这样写 如果 前面红圈列 有其他相同的值的数据行 就出问题
回复
Tony_xiaofeng 2013-05-09
或者200的跑到200.57的前面,第一条就没用了
回复
Tony_xiaofeng 2013-05-09
就是200.57的跑到对应旷代200的后面,然后第三条就没用了
回复
dyboy0822 2013-05-09
合并是什么意思?两条数据合并成一条?规则呢?
回复
相关推荐
发帖
Oracle
创建于2007-09-28

1.6w+

社区成员

Oracle开发相关技术讨论
申请成为版主
帖子事件
创建了帖子
2013-05-09 04:55
社区公告
暂无公告