一种简单的表中删除重复行的方法

 更新时间:2016年11月25日 16:41  点击:1516
先创建一个与原表一样的表,
然后在表上创建 ignore_dup_key 索引,如下:
CREATE UNIQUE INDEX removedups
ON  #table_copy (name)
WITH IGNORE_DUP_KEY
然后在导入原表数据,简单吧


安装篇
PHP MySQL Linux目前已逐渐成为小型web服务器的一种经典组合。在indows环境下构筑和调试MySQL数据库是许多网站开发者的一种首选。本人在Windows98环境下初学MySQL,现将学习过程与经验总结出来供大家参考。
1、下载mysql-3.23.35-win.zip并解压;
2、运行setup.exe;选择d:mysql,"tyical install"
3、启动mysql,有如下方法:
方法一:使用winmysqladmin
1)、进入d::mysqlin目录,运行winmysqladmin.exe,在屏幕右下角的任务栏内会有一个带红色的图符
2)、鼠标左键点击该图符,选择“show me”,出现“WinMySQLAdmin”操作界面;首次运行时会中间会出现一个对话框要求输入并设置你的用户名和口令
3)、选择“My.INI setup”
4)、在“mysqld file”中选择“mysqld-opt”(win9x)或“mysqld-nt”(winNT)
5)、选择“Pick-up or Edit my.ini values”可以在右边窗口内对你的my.ini文件进行编辑
6)、选择“Save Modification”保存你的my.ini文件
7)、如果你想快速使用winmysqladmin(开机时自动运行),选择“Create ShortCut on Start Menu”
8)、测试:
进入DOS界面;
在d:mysqlin目录下运行mysql,进入mysql交互操作界面
输入show databases并回车,屏幕显示出当前已有的两个数据库mysql和test

方法二:不使用winmysqladmin
1)、在DOS窗口下,进入d:/mysql/bin目录
2)、win9X下)运行:
mysqld
在NT下运行:
mysqld-nt --standalone
3)、此后,mysql在后台运行
4)、测试mysql:(在d:/mysql/bin目录下)
a)、mysqlshow
正常时显示已有的两个数据库mysql和test
b)、mysqlshow -u root mysql
正常时显示数据库mysql里的五个表:
columns_priv
db
host
tables_priv
user
c)、mysqladmin version status proc
显示版本号、状态、进程信息等
d)、mysql test
进入mysql操作界面,当前数据库为test
5)、mysql关闭方法:
mysqladmin -u root shutdown
4、至此,MySQL已成功安装,接着可以熟悉MySQL的常用命令并创建自己的数据库了。

在SQL Server 2000中,我们想在数据库表中直接修改数据,一般的操作方法是:在SQL Server 企业管理中,选择相应的表,点击右键,在“打开表”中选择“查询”,在SQL编辑窗口中输入SQL语句找到要修改的记录,然后在结果窗口中直接修改相应的字段。
那在SQL Server 2005中,需要怎样操作呢?
在SQL Server Management Studio中,找到相应的表,点击右键,选择“Open Table”,然后点击“Show Sql Pane”按钮,在Sql Pane窗口中输入SQL语句找到要修改的记录,然后在结果窗口中直接修改相应的字段。
也许你觉得SQL Server 2005与SQL Server 2000的操作没什么区别。
但问题就出在选择“Open Table”时,当“Open Table”,SQL Server Management Studio会执行查询表中所有记录的操作,如果表中数据很多,就会有个等待查询的时间,你会为这个等待很恼火,因为你只是想修改某个记录,这个查询根本是多余的。在SQL Server 2000中也有“Open Table”,也是查询所有记录,但SQL Server 2000还提供了“查询”操作,就是文章开始讲到的操作方法。
你也许会说SQL Server Management Studio中提供了“Script Table as”操作,但通过Script Table as的Select To查询的结果是只读的,无法进行修改。如果通过“Update to”进行操作也不方便,因为多数情况下,在修改数据之前,先要看一下原来的数据。如果直接Update,可能会由于SQL语句中输错了条件而进行了不是期望的修改。
我也是刚刚接触SQL Serve r2005,也许SQL Server 2005提供了其他方便的操作方法,但我没找到。如果你知道,欢迎你告诉我。
出处:dudu-快乐程序员


前两篇说的是联接ORACLE的方法,我还试过用ODBC的方法。
方法:
一、先建一个系统DSN,我试的只能是系统DSN
二、再用前两的方法添加LINKED SERVER
三、然后就可以正常使用了,但我试的发现这种方法不太稳定。
另需说明的是:
在第二步中Provider应为MSDASQL
用ENTERPRISE MANAGER的话Provider name应
选择“Microsoft OLE DB Provider for ODBC”
在UNIX ORACLE7和NT4 SP5 SQL7上测试成功
我还设过SQL7同SYSBASE的联接,不过令人感到奇怪的是SQL7的客户可以直接指向SYSBASE服务器。
方法:
一、在本地服务器上安装SYSBASE的客户端并设好,可联上服务器
二、打开SQL7的CLIENT NETWORK UTILITY,添加服务器,地址直接
指向SYSBASE服务器的IP地址,端口号和SYSBASE的客户端的设置相同
三、添加LINKED SERVER时和添加MSSQL的方法相同
在UNIX SYSBASE和NT4 SP5 SQL7上测试成功
在UNIX SYSBASE和WIN98 SQL7上测试成功
在SQL7访问SQL6.5的方法最简单,只需在CLIENT NETWORK UTILITY中设上6.5服务器的联接即可。
但有一点是,这样联接只能在QUERY ANALYZER中使用,却不能在ENTERPRISE MANAGER中进行管理。
关于REMOTE SERVER和LINKED SERVER的问题就说到这儿了,要是再说下去的话就会有人说我这是“什么什么的裹脚布,又臭又长了”。

sql2000的查询结果进行相关度排序,听起来好象很吸引人,不过真的是可以实现的。
上午上网看到了一篇利用微软index server来做全文查询的文章(这个以前也看到过,在计算机管理中也自带了这样一个查询功能)
我的IIS默认web服务器在g:/wwwroot下其中有10万多的html文档
测试:strSearch = "SELECT DocTitle, Path, FileName, Characterization, Size,write,RANK" & _
" FROM SCOPE()" & _
" WHERE CONTAINS ('" & Request.Form("txtSearchFor") & "') ORDER BY RANK desc" 还进行了相关度的排序,我没有做时间的具体开销
的计算,不过给人的感觉还可以接受,在翻页的时候就非常快了。不过最大的缺点好象就是只能索引静态页面了。
下午我把以前的一个50多万条记录(主要是歌曲名和歌手名)的数据库在sql2000做了索引,晚上就可以开始测试了。
测试一: "select top 26 * from song1 where contains(songtitle,'爱')",对结果没有进行任何的处理,只是按照ID的升续排列
时间开销基本上维持在0.016s,速度是很让人满意的,至少感觉不到慢。
测试二:利用rank值进行了相关度的排序,"order by rank desc" or "order by rank asc",查询结果在排序的质量上让人满意,都比较
准确的,不管是查询时使用 or 或者and进行多关键字的排序都还可以的,不过时间的开销让我受不了,居然在6s到8s之间,
而且cpu也占用比较高
我看到网上其他的搜索的相关度排序都比较快的,开源的Lucene我没有研究过,因为我不懂java。
不过我想如果在索引的时候对每个关键字进行相关度的运算查询起来应该不会慢的啊,这个我也感到郁闷。


[!--infotagslink--]

相关文章

  • php读取zip文件(删除文件,提取文件,增加文件)实例

    下面小编来给大家演示几个php操作zip文件的实例,我们可以读取zip包中指定文件与删除zip包中指定文件,下面来给大这介绍一下。 从zip压缩文件中提取文件 代...2016-11-25
  • 删除条目时弹出的确认对话框

    复制代码 代码如下: <td> <a href="/member/life/edit_ppt/<?php echo $v->id;?>" class="btn">编辑</a> <a href="javascript:;" onclick="if(confirm('您确定删除这条记录?')){location.href='/member/life/d...2014-06-07
  • php跨网站请求伪造与防止伪造方法

    伪造跨站请求介绍伪造跨站请求比较难以防范,而且危害巨大,攻击者可以通过这种方式恶作剧,发spam信息,删除数据等等。...2013-10-01
  • Centos中彻底删除Mysql(rpm、yum安装的情况)

    我用的centos6,mysql让我整出了各种问题,我想重装一个全新的mysql,yum remove mysql-server mysql之后再install并不能得到一个干净的mysql,原来的/etc/my.cnf依然没变,datadir里面的数据已没有任何变化,手动删除/etc/my.cn...2015-03-15
  • MyBatis-Plus的物理删除和逻辑删除(使用场景)

    数据库中的数据删除会分为两种:物理删除 和 逻辑删除,接下来通过本文给大家介绍MyBatis-Plus的物理删除和逻辑删除使用场景分析,感兴趣的朋友一起看看吧...2021-09-25
  • sqlserver删除重复记录并且要保留一条记录

    删除重复数据,只保留一条用SQL语句,删除掉重复项只保留一条在几千条记录里,存在着些相同的记录,如何能用SQL语句,删除掉重复的呢...2018-09-10
  • mybatis-plus getOne和逻辑删除问题详解

    这篇文章主要介绍了mybatis-plus getOne和逻辑删除,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-08-26
  • jQuery动态添加与删除tr行实例代码

    最近由于项目的需要,需要动态的添加和删除table中的tr,感觉用JS可以实现,但是在网上找了一下,单纯的自己写JS,感觉太麻烦,而且也不好维护。于是想到了最近学的jQuery。这篇文章给大家用实例介绍了jQuery动态添加与删除tr行的方法,有需要的朋友们可以参考借鉴。...2016-10-20
  • C# 复制与删除文件的实现方法

    这篇文章主要介绍了C# 复制与删除文件的实现方法的相关资料,希望通过本文能帮助到大家,让大家理解掌握这部分内容,需要的朋友可以参考下...2020-06-25
  • js实现上传文件添加和删除文件选择框

    这篇文章主要为大家详细介绍了js实现上传文件添加和删除文件选择框 ,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2016-10-25
  • C#删除UL LI中指定标签里文字的方法

    这篇文章主要介绍了C#删除UL LI中指定标签里文字的方法,涉及C#针对页面HTML元素进行正则匹配与替换的相关操作技巧,需要的朋友可以参考下...2020-06-25
  • MybatisPlus实现逻辑删除功能

    这篇文章主要介绍了MybatisPlus实现逻辑删除功能,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-12-25
  • C#删除字符串中重复字符的方法

    这篇文章主要介绍了C#删除字符串中重复字符的方法,涉及C#针对字符串的遍历及移除等操作的技巧,非常具有实用价值,需要的朋友可以参考下...2020-06-25
  • C++递归删除一个目录实例

    这篇文章主要介绍了C++递归删除一个目录的实现方法,涉及到目录的操作及递归算法的应用,需要的朋友可以参考下...2020-04-25
  • jQuery中DOM节点的删除方法总结(超全面)

    这篇文章主要介绍了jQuery中DOM节点的删除方法,文中介绍的很相信,内容包括empty()的基本用法、remove()的有参用法和无参用法、empty和remove区别、保留数据的删除操作detach()以及detach()和remove()区别,需要的朋友可以参考借鉴。...2017-01-26
  • postgresql 删除重复数据的几种方法小结

    这篇文章主要介绍了postgresql 删除重复数据的几种方法小结,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-02-05
  • MySQL查看、创建和删除索引的方法

    本文实例讲述了MySQL查看、创建和删除索引的方法。分享给大家供大家参考。具体如下:1.索引作用在索引列上,除了上面提到的有序查找之外,数据库利用各种各样的快速定位技术,能够大大提高查询效率。特别是当数据量非常大,查询...2015-10-21
  • C#删除Excel中的图片实例代码

    在本篇文章里小编给大家分享了关于C#删除Excel中的图片的实例代码内容,有兴趣的朋友们参考学习下。...2020-06-25
  • mysql delete 多表连接删除功能

    这篇文章主要介绍了mysql delete 多表连接删除功能的相关资料,需要的朋友可以参考下...2017-03-14
  • jQuery表格的维护和删除操作

    可以利用js函数来实现对表格的维护和删除,相对于JavaScript简单方便,下面通过实例代码给大家介绍下jQuery表格的维护和删除操作,一起通过本文学习吧...2017-02-08