文本版|topic 高级搜索
   名人堂 帮助 论坛制度 意见反馈 | 首页 博客 周新贴 专题 求职 读书
RSS 底部
 
社区导航: 专家门诊   网络技术   操作系统   数据库   程序设计   系统应用   考试认证   CIO及信息化   站长交流   综合交流   下载基地  51CTO产品服务 设为首页 | 收藏本站
51CTO技术论坛» 微软SQL Server专区 » SQL Server应用开发 » 求删除重复数据的sql语句解决方法       [ 打印]  [ 订阅]  [ 收藏]  [ 推荐给朋友]   [ 本帖文本页]

论坛跳转:
     
标题: [其他] 求删除重复数据的sql语句解决方法  ( 查看:182  回复:4 )   
 
djd66
新新人类  点击可查看详细



十二生肖之猴   行业勋章   技术勋章   诚信兄弟  
帖子 6
精华 0
无忧币 10
积分 6
阅读权限 20
注册日期 2007-7-17
最后登录 2008-9-8 离线

[查看资料]  [发短消息]  [Blog
       
发表于:2008-7-24 14:02   标题:求删除重复数据的sql语句解决方法
上一帖 |
问题描述:表date含有多个字段,id(唯一值),classid,classname,guige,xinghao,area,price,num,addtime......等等,用户可以通过前台一条一条录入,如何实现当用户录入的数据重复时,不存储新提交的数据呢?

注:id,addtime不会相同,其他字段重复。

显然依次取某个字段的某个值然后跟其余记录比较的方法效率太低,有没有好的解决方案呢?



网络虽虚拟,技术无边界,来看看大家“真面目”!
2008-7-24 14:021楼
[ 顶部 ]
 
boyi55
副版主  点击可查看详细


诚信兄弟   天秤座  
帖子 907
精华 1
无忧币 3703
积分 954
阅读权限 140
来自 (保密)
注册日期 2006-1-12
最后登录 2008-9-8 离线

[查看资料]  [发短消息]  [Blog
[个人主页]    QQ       
发表于:2008-8-16 10:31 
那就用触发器对比一下吧。虽然性能有些影响,但总还是一种可行的办法。



春江潮水连海平/海上明月共潮生/滟滟随波千万里/何处春江无月明!
2008-8-16 10:312楼
[ 顶部 ]
 
everyman
新新人类  点击可查看详细



帖子 53
精华 0
无忧币 113
积分 117
阅读权限 20
注册日期 2006-11-15
最后登录 2008-8-31 离线

[查看资料]  [发短消息]  [Blog
       
发表于:2008-8-17 15:40   标题:回答

可以用SQL语句处理(建立虚表)比如:
select * from date where classname=输入或选择的数据
if dateset(table.name).rows.count>0 then
   msgbox(" 数据重复")
  exit sub
end if



网络虽虚拟,技术无边界,来看看大家“真面目”!
2008-8-17 15:403楼
[ 顶部 ]
 
kerryyu
超级版主  点击可查看详细


内阁大臣   中秋活动勋章  
帖子 155
精华 0
无忧币 1126
积分 492
阅读权限 200
来自 (保密)
注册日期 2007-5-31
最后登录 2008-9-3 离线

[查看资料]  [发短消息]  [Blog
[个人主页]    QQ       
发表于:2008-8-20 09:34 
如果是SQL2005 的话我建议用排序的方法去除重复,效率相当高。
举例:
--依照产品类型分开编的记录编号
SELECT PSC.Name Category,p.Name Product,p.ListPrice,
ROW_NUMBER() OVER(PARTITION BY PSC.Name ORDER BY P.ListPrice DESC) AS Row
FROM Production.Product p
JOIN Production.ProductSubCategory PSC
ON p.ProductSubCategoryID=PSC.ProductSubCategoryID
ORDER BY Category,ListPrice DESC

SQL2000删重复的例子网上有很多,就不举例子了。



2008-8-20 09:344楼
[ 顶部 ]
 
djd66
新新人类  点击可查看详细



十二生肖之猴   行业勋章   技术勋章   诚信兄弟  
帖子 6
精华 0
无忧币 10
积分 6
阅读权限 20
注册日期 2007-7-17
最后登录 2008-9-8 离线

[查看资料]  [发短消息]  [Blog
       
发表于:2008-8-21 10:34 
谢谢各位,问题解决~



网络虽虚拟,技术无边界,来看看大家“真面目”!
2008-8-21 10:345楼
[ 顶部 ]
     
论坛跳转:  

| | |

| | |

| | |

标记已读 · 删除论坛Cookies · 文本版 · WAP
 
| 诚征版主 | 版主堂 | 意见建议 | 大史记 | 论坛地图
Copyright©2005-2008 51CTO.COM  Powered by Discuz!
本论坛言论纯属发布者个人意见,不代表51CTO网站立场!如有疑义,请与管理员联系。
京ICP备05051492号