Return only a single row from duplicate rows with MySQL


To return only a single row from duplicate rows, use DISTINCT keyword −

mysql> create table DemoTable1998
(
   Name varchar(20)
);
Query OK, 0 rows affected (0.61 sec)

Insert some records in the table using insert command −

mysql> insert into DemoTable1998 values('Robert');
Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable1998 values('Chris');
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable1998 values('Robert');
Query OK, 1 row affected (0.30 sec)
mysql> insert into DemoTable1998 values('David');
Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable1998 values('Bob');
Query OK, 1 row affected (0.12 sec)
mysql> insert into DemoTable1998 values('David');
Query OK, 1 row affected (0.10 sec)

Display all records from the table using select statement −

mysql> select * from DemoTable1998;

This will produce the following output −

+--------+
| Name   |
+--------+
| Robert |
| Chris  |
| Robert |
| David  |
| Bob    |
| David  |
+--------+
6 rows in set (0.00 sec)

Here is the query to return only a single row from duplicates −

mysql> select distinct * from DemoTable1998;

This will produce the following output −

+--------+
| Name   |
+--------+
| Robert |
| Chris  |
| David  |
| Bob    |
+--------+
4 rows in set (0.01 sec)

Updated on: 02-Jan-2020

797 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements