Chinaunix

标题: [求助]一条sql语句的写法,不知道是否有解? [打印本页]

作者: tomorrower    时间: 2009-11-18 20:02
标题: [求助]一条sql语句的写法,不知道是否有解?
报刊目录表 bkml
报刊代号bkdh,报刊名称bkmc,变动次数bdcs

内容:
1-335     中国儿童画报.小学一年级              0
1-335     中国儿童画报.小学一二年级          1
1-335     中国儿童画报.小学一二年级语文   2
54-17     读者                                                    0
54-17     读者1                                     1
54-17     读者2                                     2
80-852   电脑爱好者1                            0
80-852   电脑爱好者2                            1
80-852   电脑爱好者3                           3
80-852   电脑爱好者4                            4
******************              *****

说明:以上报刊目录表中,如果有变动,就是新增一条记录,bdcs增加1
我现在要得到唯一的报刊目录和名称对应表,条件是每种目录中变动次数最大的一条

目标结果:每种报刊代号对应一条记录,对应bdcs最大这条的报刊名称
1-335     中国儿童画报.小学一二年级语文
54-17     读者2
80-852   电脑爱好者4

请教,是否可以通过语句得到以上结果?

[ 本帖最后由 tomorrower 于 2009-11-18 20:05 编辑 ]
作者: xdxycx    时间: 2009-11-18 20:56
标题: 看看那
看看行不行
作者: tomorrower    时间: 2009-11-19 08:20
看来是没有办法通过SQL语句实现了,只好编写程序逐条取值了
作者: DQP    时间: 2009-11-19 13:34


  1. select b.bkdh, b.bkmc, b.bdcs
  2.   from bkml b
  3. where not exists (select 1
  4.                      from bkml
  5.                      where b.bkdh = bkdh
  6.                        and b.bdcs < bdcs)

复制代码

作者: renxiao2003    时间: 2009-11-19 14:30
select b.bkdh, b.bkmc, b.bdcs
  from bkml b
where b.bdcs = (select max(bdcs) from bkml a where a.bkdh = b.bkdh)




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2