免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3044 | 回复: 4

sql语句中distinct的疑惑 [复制链接]

论坛徽章:
0
发表于 2011-03-07 17:07 |显示全部楼层
有如下table表
  1. id        name        content       
  2. 1        a        9
  3. 2        b        8
  4. 3        c        7
  5. 4        c        6
  6. 5        b        0
复制代码
虚心请教,用sql语句如何实现以第二列为参照,如果该行当中第二列字段复重出现的了,就删除该行

也就是处理之后,得到如下形式
  1. id        name        content
  2. 1        a        9
  3. 2        b        8
  4. 3        c        7
复制代码
小弟试用了如下方法都没有成功
  1. select distinct(name),id,content from table group by name
复制代码
没有成功
  1. select *,count(distinct name) from table group by name
复制代码
也没有成功

希望CU朋友们帮助小弟下

论坛徽章:
3
CU大牛徽章
日期:2013-09-18 15:16:55CU大牛徽章
日期:2013-09-18 15:18:22CU大牛徽章
日期:2013-09-18 15:18:43
发表于 2011-03-07 17:27 |显示全部楼层
lz试试吧


  1. SQL> select t.id,t.name,t.content
  2.   2  from (select distinct id,name,row_number() over(partition by name order by id asc)  rm
  3.   3        from t) t1,t
  4.   4  where t1.id=t.id
  5.   5  and t1.rm<2
  6.   6  order by id;

  7.         ID NAME          CONTENT
  8. ---------- ---------- ----------
  9.          1 a                   9
  10.          2 b                   8
  11.          3 c                   7

复制代码

论坛徽章:
59
2015七夕节徽章
日期:2015-08-24 11:17:25ChinaUnix专家徽章
日期:2015-07-20 09:19:30每周论坛发贴之星
日期:2015-07-20 09:19:42ChinaUnix元老
日期:2015-07-20 11:04:38荣誉版主
日期:2015-07-20 11:05:19巳蛇
日期:2015-07-20 11:05:26CU十二周年纪念徽章
日期:2015-07-20 11:05:27IT运维版块每日发帖之星
日期:2015-07-20 11:05:34操作系统版块每日发帖之星
日期:2015-07-20 11:05:36程序设计版块每日发帖之星
日期:2015-07-20 11:05:40数据库技术版块每日发帖之星
日期:2015-07-20 11:05:432015年辞旧岁徽章
日期:2015-07-20 11:05:44
发表于 2011-03-07 19:04 |显示全部楼层
回复 2# duolanshizhe


    好久不搞O了。有些东西都不会用了。兄弟还是厉害啊。常来啊。

论坛徽章:
0
发表于 2011-03-07 21:04 |显示全部楼层
回复 2# duolanshizhe


谢谢    duolanshizhe   的回复

还望你进一步指教

我的数据库是sql2000的,不支持row_number(),over,partition by等命令

能否再帮忙写一个sql2000的支持语句啊,谢谢了

论坛徽章:
3
CU大牛徽章
日期:2013-09-18 15:16:55CU大牛徽章
日期:2013-09-18 15:18:22CU大牛徽章
日期:2013-09-18 15:18:43
发表于 2011-03-08 10:46 |显示全部楼层
sqlserver 也有row_number行数啊   自己google下  修改下就行
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP