• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >Mysql > SQL语句删除2条重复数据一条保留一条

SQL语句删除2条重复数据一条保留一条

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-05

匿名通过本文主要向大家介绍了重复数据等相关知识,希望本文的分享对您有所帮助

SQL语句2条完全一样的数据删除一条保留一条,SQL Server 2005 Express 下测试通过, 仅供参考

-- 任意的测试表
代码如下:
CREATE TABLE test_delete(
name varchar(10),
value INT
);
go
-- 张三100 与 王五80 是有重复的
INSERT INTO test_delete
SELECT '张三', 100
UNION ALL SELECT '张三', 100
UNION ALL SELECT '李四', 80
UNION ALL SELECT '王五', 80
UNION ALL SELECT '王五', 80
UNION ALL SELECT '赵六', 90
UNION ALL SELECT '赵六', 70
go
-- 测试检索数据
SELECT
ROW_NUMBER() OVER (PARTITION BY name, value ORDER BY (SELECT 1) ) AS no,
name,
value
FROM
test_delete


no name value
-------------------- ---------- -----------
1 李四 80
1 王五 80
2 王五 80
1 张三 100
2 张三 100
1 赵六 70
1 赵六 90

--创建视图
代码如下:
CREATE VIEW tmp_view AS
SELECT
ROW_NUMBER() OVER (PARTITION BY name, value ORDER BY (SELECT 1) ) AS no,
name,
value
FROM
test_delete

--删除数据
1> DELETE FROM tmp_view WHERE no != 1
2> go

(2 行受影响)

-- 核对结果
1> www.jb51.net
2> select * from test_delete;
3> go
name value
---------- -----------
张三 100
李四 80
王五 80
赵六 90
赵六 70

(5 行受影响)


作者 tearsmo
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

相关文章

  • 2018-12-05java编写创建数据库和表的程序
  • 2018-12-05mysql ndb集群备份数据库和还原数据库的方法
  • 2018-12-05SQL 合并多行记录的方法总汇
  • 2018-12-05SQLServer ntile获取每组前10%的数据
  • 2018-12-05SQL 分布式查询、插入递增列示例
  • 2018-12-05优化MySQL中的分页
  • 2018-12-05收缩数据库日志文件的方法(仅适用于mssql2005)
  • 2018-12-05MySQL 查询数据
  • 2018-12-05详细介绍MySql Sql优化的技巧分享
  • 2018-12-05SQL 比较一个集合是否在另一个集合里存在的方法分享

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • Mysql优化与索引总分析【图解】
    • sqlserver 触发器实例代码
    • 在Oracle中利用SQL_TRACE跟踪SQL的执行
    • mysql 存储过程详解_MySQL
    • MySQL错误Forcing close of thread的两种解决方法
    • 在WIN命令提示符下mysql 用户新建、授权、删除,密码修改
    • Mysql命令行导入sql数据
    • 比较Java数据类型与MySql数据类型
    • MYSQL学习总结(四):MYSQL的恢复和备份
    • 简单介绍MySQL中的事务机制

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有