Home >Database >Mysql Tutorial >How to query unique data in MySQL
MySQL is currently the most popular relational database management system and is widely used in the field of data storage and processing. In practical applications, querying unique data is a common requirement. This article will introduce how to query unique data in MySQL.
1. Query the entire row of non-duplicate data
In MySQL, you can use the DISTINCT keyword or GROUP BY clause to query the non-duplicate data, where the DISTINCT keyword acts on the entire row of data. , the GROUP BY clause groups each column of data and returns the result.
Use the DISTINCT keyword to filter out duplicate entire rows of data. The syntax is as follows:
SELECT DISTINCT column1, column2, ... FROM table_name;
Among them, column1 and column2 ,... indicates the column names that need to be filtered for unique data. You can specify one or more columns, and multiple columns are separated by commas.
For example, we have a student table (students) as follows:
id | name | age | gender |
---|---|---|---|
张三 | 20 | 男 | |
李四 | 21 | Male | |
Wang Wu | 20 | 女 | |
Zhao Liu | 22 | Female | |
Qian Qi | 21 | Male | |
Sunba | 20 | 女 |
SELECT DISTINCT * FROM students;
The execution result is as follows:
name | age | gender | |
---|---|---|---|
张三 | 20 | Male | |
李四 | 21 | Male | ##3 |
20 | 女 | 4 | |
#22 | 女 | 5 | |
21 | Male | 6 | |
20 | 女 |
Use the GROUP BY clause
SELECT column1, column2, ... FROM table_name GROUP BY column1, column2, ...;For example, if we need to query unique data based on the age and gender of students, we can use the following SQL statement:
SELECT age, gender FROM students GROUP BY age, gender;The execution results are as follows:
20 | |
21 | |
22 | |
You can see that using the GROUP BY clause can also achieve the effect of querying non-duplicate data. |
In addition to querying the entire row of non-duplicate data, sometimes we also need to query the non-duplicate data in certain columns. For this case, we can use subquery or GROUP BY clause.
Use subquerySELECT age FROM students WHERE age IN (SELECT DISTINCT age FROM students);
The execution results are as follows:
age##20 |
---|
As you can see, subqueries can be used to filter unique data on certain columns and return the required results. |
SELECT gender FROM students GROUP BY gender;
gender
##female |
---|
To sum up, querying non-duplicate data is a frequently used operation in MySQL, which can be achieved using the DISTINCT keyword, GROUP BY clause and subquery. In practical applications, we can choose different methods to query unique data according to needs. |
The above is the detailed content of How to query unique data in MySQL. For more information, please follow other related articles on the PHP Chinese website!