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

Tony_xiaofeng 2013-05-09 04:55:41
...全文
183 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
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
  • 打赏
  • 举报
回复
合并是什么意思?两条数据合并成一条?规则呢?

17,140

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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