如何加快MySQL中的SELECT DISTINCT
要加快SELECT DISTINCT,可以在列或一组列上创建索引。让我们首先创建一个表 –
mysql> create table DemoTable
(
Name varchar(40)
);
Query OK, 0 rows affected (1.13 sec)
以下是创建索引的查询 –
mysql> create index Name_Index on DemoTable(Name);
Query OK, 0 rows affected (1.56 sec)
Records: 0 Duplicates: 0 Warnings: 0
使用插入命令在表中插入一些记录 –
mysql> insert into DemoTable values('Chris');
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable values('Mike');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable values('Chris');
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable values('Chris');
Query OK, 1 row affected (0.12 sec)
mysql> insert into DemoTable values('Sam');
Query OK, 1 row affected (0.16 sec)
使用select语句显示表中的所有记录 –
mysql> select *from DemoTable;
这将产生以下输出 –
+-------+
| Name |
+-------+
| Chris |
| Chris |
| Chris |
| Mike |
| Sam |
+-------+
5 rows in set (0.00 sec)
以下是仅选择不同记录的查询 –
mysql> select distinct Name from DemoTable;
这将产生以下输出 –
+-------+
| Name |
+-------+
| Chris |
| Mike |
| Sam |
+-------+
3 rows in set (0.02 sec)
阅读更多:MySQL 教程
极客教程