数据库为2000
现有字段:
id,site,type,fromplace,toplace,scount,year,month备注:
stype:搜索类型
fromplace:出发地
toplace:目的地
site:站点
scount:搜索次数 --【未统计好】
logyear:记录年
logmonth:记录月现在想用一条SQL语句根据搜索类型查询每月中,搜索次数在前20的记录先前发的帖子没有把问题说清,对已回答者深感歉意!测试数据:type          fromplace   toplace   site     scount
trainSearch 上海 杭州 NULL 8372 2009 08
trainSearch 北京 南京 NULL 4399 2009 08
trainSearch 北京 深圳 NULL 4808 2009 08
trainSearch 成都 重庆北 NULL 4626 2009 08
trainSearch 上海 西安 NULL 4501 2009 08
trainSearch 上海 苏州 NULL 4419 2009 08
trainSearch 北京 沈阳 NULL 4408 2009 08
trainSearch 西安 成都 NULL 4312 2009 08
trainSearch 北京 青岛 NULL 4241 2009 08
trainSearch 大连 沈阳 NULL 4204 2009 08
trainSearch 北戴河 北京 NULL 4069 2009 08
trainSearch 上海 厦门 NULL 3977 2009 08
trainSearch 南宁 北海 NULL 3899 2009 08
trainSearch 温州 杭州 NULL 3825 2009 08
trainSearch 西安 上海 NULL 3809 2009 08
trainSearch 九江 南昌 NULL 3808 2009 08
trainSearch 成都 北京 NULL 3716 2009 08
trainSearch 沈阳 丹东 NULL 3642 2009 08
trainSearch 天津西 青岛 NULL 3574 2009 08
trainSearch 无锡 南京 NULL 3562 2009 08---------------------------------------------------------------------trainSite  NULL NULL 上海 430 2009 08
trainSite  NULL NULL 北京 417 2009 08
trainSite          NULL NULL 哈尔滨东 34309 2009 08
trainSite          NULL NULL 长春 30306 2009 08
trainSite          NULL NULL 上海南 27620 2009 08
trainSite   NULL NULL 太原 27524 2009 08
trainSite  NULL NULL 济南 27402 2009 08
trainSite  NULL NULL 重庆 27164 2009 08
trainSite          NULL NULL 南昌 26117 2009 08
trainSite          NULL NULL 沈阳北 25874 2009 08
trainSite          NULL NULL 洛阳 25098 2009 08
trainSite          NULL NULL 包头 22714 2009 08
trainSite          NULL NULL 呼和浩特 22314 2009 08
trainSite          NULL NULL 邯郸 19673 2009 08
trainSite          NULL NULL 昆明 19533 2009 08
trainSite          NULL NULL 西宁 19502 2009 08
trainSite   NULL NULL 乌鲁木齐 19186 2009 08
trainSite  NULL NULL 佳木斯 19126 2009 08
trainSite          NULL NULL 桂林 18619 2009 08
trainSite          NULL NULL 丹东 18559 2009 08

解决方案 »

  1.   

    select *
    from tb t
    where (select count(1) from tb where stype=t.stype and scount>=t.scount)<=20
      

  2.   


    这里我少写了个条件,我之所以说搜索次数未统计好,是因为还有个平台,如果从不同平台过来,即使“出发地-目的地”一样,但是后面的统计次数不一样,所以就需要把“出发地-目的地”一样的搜索次数需要SUM,
      

  3.   


    所以就需要把“出发地-目的地”一样的搜索次数需要SUM ?是统计出出发地,目的地,站点,你的scount 一样的统计次数吗 ?
      

  4.   

    除了站点其他的都是查询的条件fromplace:出发地
    toplace:目的地
    site:站点
    scount:搜索次数 --【未统计好】
    logyear:记录年
    logmonth:记录月
    select *
    from tb t
    where 
    (select count(1) 
    from tb 
    where stype=t.stype 
    and scount>=t.scount
    and fromplace=t.fromplace
    and toplace=t.toplace
    and logyear=t.logyear
    and logmonth=t.logmonth)<=20