CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Web 开发 >  ASP

请问在一个数据库,记录遇到相当的数据时怎样才能只显示一条?

楼主xiaxin(Java)2005-06-02 15:52:01 在 Web 开发 / ASP 提问

<%  
  set   class2=conn.execute("select   types2   from   content   order   by   id   desc")  
   
  do   while   (not   class2.EOF)  
        response.write   class2("types2")  
  class2.MoveNext  
  loop  
  %>  
   
  在字段types2里的数据如下:  
   
  警苑文化  
  警苑文化  
  警苑文化  
  警苑文化  
  法律法规  
  法律法规  
  法律法规  
  法律法规  
  工作动态  
  工作动态  
  工作动态  
  工作动态  
  工作动态  
  工作动态  
  工作动态  
  工作动态  
  工作动态  
  工作动态  
  工作动态  
  春季森林防火的紧急通知  
  森林火灾火警处置程序  
  掌握防火扑火常识  
  责任制度  
  基础建设  
   
   
   
  记录输出后,里面的数据全出来了。我现在要将相同的记录去掉,只留一条。这样输出:  
   
  警苑文化  
  法律法规  
  工作动态  
  春季森林防火的紧急通知  
  森林火灾火警处置程序  
  掌握防火扑火常识  
  责任制度  
  基础建设  
   
   
  请问有什么办法吗? 问题点数:30、回复次数:13Top

1 楼roy66(我要堕落成天使)回复于 2005-06-02 15:59:59 得分 5

select   distinct   types2   from   content   order   by   id   descTop

2 楼poonzsp(怒放的生命)回复于 2005-06-02 16:26:21 得分 0

同意楼上  
   
  Select   distince   字段   From   表Top

3 楼jdrg535(废柴)回复于 2005-06-02 16:30:40 得分 5

set   class2=conn.execute("select   types2   from   content   group   by   types2   order   by   id   desc")Top

4 楼xiaxin(Java)回复于 2005-06-02 16:45:24 得分 0

我用   select   distinct     后,IE呈现死机状态,而且电脑速度奇慢。不得不重启。我开始以为是网络或别的什么原因。但把distinct去掉后就一切正常了。这是怎么回事?我连试了三次,就重启了电脑三次。一运行select   distinct   就在内存中发现dllhost.dll这个文件狂吞内存,页面运行得越久,它所占的内存越大。。。  
   
  我的数据库是access,   而且SQL语句后面还跟有条件语句,上面的我只是把多余的去掉了。实际语句为:  
  set   class2=conn.execute("select   distinct   types2   from   content   where   types1   like     '%"&request("types1")&"%'   order   by   id   desc")  
   
  是不是distinct不适合ACCESS数据库?Top

5 楼dcwang(帆洲)回复于 2005-06-02 16:53:11 得分 0

types2前加distinct不行?  
  你机子什么配置啊?  
  偶C633的都可以用的也.Top

6 楼xiaxin(Java)回复于 2005-06-02 16:55:07 得分 0

这是怎么回事啊,我用set   class2=conn.execute("select   types2   from   content   group   by   types2   order   by   id   desc")也一样。是   dllhost.exe   文件狂占内存。一个文件占到了六十多兆。Top

7 楼xiaxin(Java)回复于 2005-06-02 16:57:17 得分 0

我的配置是   赛扬1.7GHz     256兆内存,集成显卡。  
  我想可能不是配置的问题,是IIS的问题。Top

8 楼bbp_fish(新鲜比比鱼)回复于 2005-06-02 17:37:53 得分 0

试试这样:  
  <%  
  set   class2=conn.execute("select   distince   types2   from   content   order   by   id   desc   Group   by   types2")  
   
  do   while   (not   class2.EOF)  
        response.write   class2("types2")  
  class2.MoveNext  
  loop  
  %>Top

9 楼xiaxin(Java)回复于 2005-06-02 18:30:24 得分 0

还是不行,一运行就非常慢。dllhost.exe   狂占内存,如果关得慢点,就死机了。我也不知道问题出在哪?  
   
  我问了一同事,他说用数组把所有的记录装进一个数组,再在这个数组里将各个记录进行比较,把记录一条条筛选出来再重新组合。可算法我不大会写,请问谁会写吗?就是将一串数用两个循环进行嵌套,把相同的去掉,只留下一个。  
   
  <%  
  set   count1=conn.execute("select   count(types2)   from   content")  
  all=count1(0)  
  count1.Close  
  set   count1=nothing  
   
  set   class2=conn.execute("select   types2   from   content   where   types1   like   '%"&request("types1")&"%'   order   by   id   desc")  
   
  for   i=1   to   all  
   
  response.write   class2("types2")  
   
  class2.movenext  
  next  
  class2.Close  
  set   class2=nothing    
  %>Top

10 楼bbp_fish(新鲜比比鱼)回复于 2005-06-02 19:06:30 得分 0

<%  
  set   class2=conn.execute("select   types2   from   content   order   by   id   desc   Group   by   types2")  
   
  do   while   (not   class2.EOF)  
        temp1   =""  
        temp2   =   class2("types2")  
        if   temp1   <>   temp2   then  
        response.write   temp2  
        temp1   =   temp2  
        end   if    
         
  class2.MoveNext  
  loop  
  %>  
  Top

11 楼bbp_fish(新鲜比比鱼)回复于 2005-06-02 19:07:44 得分 20

上面发错了因该改成以下  
  <%  
  set   class2=conn.execute("select   types2   from   content   order   by   id   desc   Group   by   types2")  
   
        temp1   =""  
   
  do   while   (not   class2.EOF)  
   
        temp2   =   class2("types2")  
        if   temp1   <>   temp2   then  
        response.write   temp2  
        temp1   =   temp2  
        end   if    
         
  class2.MoveNext  
  loop  
  %>  
  Top

12 楼xiaxin(Java)回复于 2005-06-03 09:36:29 得分 0

楼上的,终于可以了。多谢了,不过。要去掉Sql语句中的Group   by   types2,否则一运行又会死机。Top

13 楼bbp_fish(新鲜比比鱼)回复于 2005-06-05 17:32:44 得分 0

建议给   types2   字段建立索引看看。Top

相关问题

  • 我怎么才能控制记录条数?(Access数据库)
  • 我怎么才能控制记录条数?(Access数据库)(sureli)
  • 怎样才能获得数据库记录条数!
  • 怎样才能删除数据库相关记录呢?
  • 我怎么才能控制记录条数?(Access数据库)(sureli)------2
  • 这样进行数据库连接,怎么才能取得记录数呢?
  • 数据库记录集
  • 数据库记录问题
  • 数据库记录删除
  • 数据库中有上百万条记录,请问如何才能最快地访问数据库中的数据。。

关键词

  • 内存
  • 数据库
  • 语句
  • 数据
  • 文化
  • 文件
  • 记录
  • 请问
  • 去掉
  • 防火

得分解答快速导航

  • 帖主:xiaxin
  • roy66
  • jdrg535
  • bbp_fish

相关链接

  • Web开发类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo