房天下 > 房天下问答 > 业主生活 > 其他
  • 怎样把mysql 当中两个项当中重复字段(3个字姓名)的整条记录删除

    我有一个MYSQL数据库 数据字段主要是人的姓名与地址,还有其它信息姓名 乡镇 地址 电话号码 姓名2张小三 A镇 XXXX 12345 李四黄大山 B镇 XXXX 12344 张小三李小明 B镇 XXXX 34454 黄五五周小东 C镇 XXXX 33242 张小强黄五五 X镇 XXXX 33434 李东东怎样用MYSQL 把列“姓名2”中的每一个字段与列“姓名”中的每一个字段作比较,把当中两个列重复字段的整一条记录删除如例子当中的两条记录就需要删除了张小三 A镇 XXXX 12345黄五五 X镇 XXXX 33434

    提问者:lingxiaolan

    发布于2010-10-29

共1个回答
  • a464033581 丨Lv 0
    最后给你定下的删除语法为:delete a from 表 a,表 b where a.姓名=b.姓名2 ;楼上的我觉得你对事务应该了解的不够吧,在一个事务里边删除记录并不是一行一行提交的,而是一起提交的,所以用这种方式完全可以删除,我已经测试通过了!下面是测试代码:/*MySQL Data TransferSource Host: localhostSource Database: wxgTarget Host: localhostTarget Database: wxgDate: 2010-06-04 12:23:36*/SET FOREIGN_KEY_CHECKS=0;-- ------------------------------ Table structure for 表-- ----------------------------CREATE TABLE `表` ( `姓名` varchar(20) default NULL, `姓名2` varchar(20) default NULL) ENGINE=MyISAM DEFAULT CHARSET=gbk;-- ------------------------------ Records -- ----------------------------INSERT INTO `表` VALUES ('张小三', '李四');INSERT INTO `表` VALUES ('黄大山', '张小三');INSERT INTO `表` VALUES ('李小明', '黄五五');INSERT INTO `表` VALUES ('周小东', '张小强');INSERT INTO `表` VALUES ('黄五五', '李东东');delete a from 表 a,表 b where a.姓名=b.姓名2 ;这样会删除两行
    +1 2010-10-29 举报
热门人气推荐
免责声明:问答内容均来源于互联网用户,房天下对其内容不负责任,如有版权或其他问题可以联系房天下进行删除。