Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在mysql中使用临时表删除重复项_Sql - Fatal编程技术网

如何在mysql中使用临时表删除重复项

如何在mysql中使用临时表删除重复项,sql,Sql,当Mysql表中只有一列时,如何删除重复项 如果表中有以下行 mysql> select * from EMP ; +------+ | id | +------+ | 10 | | 10 | | 10 | | 20 | | 20 | | 30 | +------+ 删除重复项后我需要行 10 20 30 我不想使用任何其他临时表。需要删除查询才能删除mysql中的重复项使用distinct 您可以使用行编号删除重复项: with todelete as (

当Mysql表中只有一列时,如何删除重复项

如果表中有以下行

mysql> select * from EMP ;
+------+
| id   |
+------+
|   10 |
|   10 |
|   10 |
|   20 |
|   20 |
|   30 |
+------+
删除重复项后我需要行

10
20
30
我不想使用任何其他临时表。需要删除查询才能删除mysql中的重复项使用distinct

您可以使用行编号删除重复项:

with todelete as (
      select em.*, row_number() over (partition by id order by id) as seqnum
      from em
     )
delete from todelete
    where seqnum > 1;

提示:SELECT DISTINCT。SELECT语句用于检索。我希望从表中删除重复的ID此表中是否有唯一的列?Select语句用于检索。我想从表中删除重复的ID。您的dbms是什么@DeepthiMysql是我的dbms。
with todelete as (
      select em.*, row_number() over (partition by id order by id) as seqnum
      from em
     )
delete from todelete
    where seqnum > 1;