面试常考的一道题:一句sql删除表里的重复数据。
偶尔和同事聊到这个问题就顺便写了下代码,供大家参考~
//数据准备
drop table t_user;
create table t_user(
id int(5) not null auto_increment,
username varchar(10),
age int(3),
primary key(id)
);
insert into t_user(username,age) values('aaa',20);
insert into t_user(username,age) values('aaa',20);
insert into t_user(username,age) values('aaa',20);
insert into t_user(username,age) values('bbb',20);
insert into t_user(username,age) values('bbb',20);
insert into t_user(username,age) values('ccc',20);
insert into t_user(username,age) values('ccc',20);
insert into t_user(username,age) values('ddd',20);
insert into t_user(username,age) values('ddd',20);
删除语句:
DELETE t
FROM
t_user t,
(
SELECT
min(id)AS ttid,
username
FROM
t_user t2
GROUP BY
t2.username
)AS tt
WHERE t.id > tt.ttid
and t.username = tt.username;
分享到:
相关推荐
1. **功能**:MySQL-Front允许用户创建、编辑、删除数据库、表、记录等,执行SQL查询,进行数据导入导出,以及管理用户权限等。 2. **界面友好**:它的界面设计直观,使用菜单和对话框,减少了学习曲线,使得数据库...
由于提供的文件内容中并没有包含具体的正文信息,仅提供了一个文件标题、描述以及标签,以及一句可能与版权或者出处相关的内容。尽管如此,我将基于标题和描述中提供的关键词“Effective MySQL之SQL语句最优化”来...
本文将重点介绍如何利用MySQL的二进制日志(binlog)以及my2sql工具来恢复数据。 首先,一旦发现误删除,首要任务是立即停止对数据库的任何写入操作,防止新数据覆盖已被删除的数据。这为恢复提供了可能的空间。如果...
SQL语句的最后一句要以 “;”号结束 二、写子句顺序 Select column,group_function From table [Where condition] [Group by group_by_expression] [Having group_condition] …… [Order by column]; --...
不过要想更加直观的控制,直接写一个程序,定时执行你的存储过程。 1、设置“SQL Server 代理”(SQL Server Agent)服务随系统启动 –我的电脑–控制面板–管理工具–服务–右键SQLSERVERAGENT–属性–启动类型–选择...
本资源提供了一个最新的、适用于微信小程序的省市区地址数据SQL文件,能够方便地集成到基于MySQL数据库的小程序应用中。 首先,我们需要理解SQL文件的作用。SQL(Structured Query Language)是一种用于管理关系...
这一句是限制只能本地访问 MySQL 的。如果我们需要其他机器访问 MySQL,可以注释掉这句话。 二、设置双机热备份 在 MySQL 中设置双机热备份是非常重要的。这可以确保我们的数据安全。我们可以使用以下步骤来设置...
### MySQL导出一句话拿WebShell的方法 在网络安全与渗透测试领域中,“拿WebShell”是一种常见操作,通过这种手段,安全研究人员或攻击者能够在目标服务器上执行任意代码,从而达到控制服务器的目的。本文将详细...
通过 `$this->getContainer()->get('database_connection')` 获取数据库连接对象,并使用 `exec` 方法执行 SQL 语句。 - **myAction2**:可以用来执行其他类型的数据库操作,如更新或删除。 - **myAction3**:同样...
顺便说一句,最近的新浪微博是真烂了,居然登录不了。 之前一直在新浪写。 以后改这里吧,突然发现这的风格很喜欢。 ================================================== 下载后,解压,发现完全没有安装文件,然后...
本篇文章将深入探讨SQL语句的基本语法,包括数据定义、数据操作、实用工具、事务处理和锁定、数据库管理、复制语句以及预处理语句等关键概念。 13.1 数据定义语句: 数据定义语句主要用于创建、修改和删除数据库...
-> 50 mysql> select ASCII(2); -> 50 mysql> select ASCII(‘dete’); -> 100 ORD(str) 如果字符串str句首是单字节返回与ASCII()函数返回的相同值。 如果是一个多字节字符,以格式返回((first byte ...
### 数据库:看一句SQL语句在MySQL中如何被执行 #### MySQL 根底架构分析 在深入了解SQL语句如何在MySQL内部执行之前,我们需要先掌握MySQL的基础架构,这对于理解整个执行流程至关重要。 ##### 1.1 MySQL 根本...
在Quartz 2.2.3版本中,提供的SQL脚本会根据不同的数据库类型(如MySQL、Oracle、SQL Server、PostgreSQL等)有所不同,因为不同的数据库有不同的SQL语法和数据类型。 例如,在MySQL中,Quartz的初始化SQL语句可能...
8. **设置乱码显示的mysql数据库中的数据.txt**:这个文档可能介绍了如何处理MySQL数据库中出现的字符编码问题,MySQL是另一种广泛使用的数据库系统,字符编码问题可能导致数据显示不正确。 通过学习和分析这些文件...
创建数据库的过程通常涉及到建立一个连接字符串,连接到Mysql服务器,然后使用SQL命令创建数据库。以下是一个简单的示例: ```csharp using MySql.Data.MySqlClient; string connectionString = "server=localhost...
标题 "city.sql.zip" 暗示这是一份包含中国省市县数据的SQL文件,它被压缩在ZIP格式的文件中。这样的文件通常用于数据库管理,特别是MySQL数据库系统,为网站或其他应用程序提供地理数据支持。 描述中提到"2020-4...
添加删除表语句 ```sql mysqldump -h hostname -u username -p password --add-drop-table database_name > backupfile.sql ``` 使用`--add-drop-table`选项会在每个`CREATE TABLE`语句前添加一个`DROP TABLE IF ...
-- <br> ======================================================<br> 数据库操作 采用JNDI 连接<br> <br> ======================================================<br>--><br> <%<br> Context ctx=new ...