Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

MySQL 목록에 있는 특정 항목의 고유 수

<시간/>

특정 항목의 고유 수를 찾으려면 GROUP BY 절과 함께 COUNT()를 사용하십시오. 먼저 테이블을 생성하겠습니다 -

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

삽입 명령을 사용하여 테이블에 일부 레코드 삽입 -

mysql> insert into DemoTable1854 values('John-Smith');
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1854 values('Chris-Brown');
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1854 values('Adam-Smith');
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1854 values('John-Doe');
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1854 values('John-Smith');
Query OK, 1 row affected (0.00 sec)

select 문을 사용하여 테이블의 모든 레코드 표시 -

mysql> select * from DemoTable1854;

이것은 다음과 같은 출력을 생성합니다 -

+-------------+
| Name        |
+-------------+
| John-Smith  |
| Chris-Brown |
| Adam-Smith  |
| John-Doe    |
| John-Smith  |
+-------------+
5 rows in set (0.00 sec)

다음은 목록에 있는 특정 항목의 고유 수를 가져오는 쿼리입니다. -

mysql> select Name,count(Name) from DemoTable1854
     where Name like 'John-%'
     group by Name;

이것은 다음과 같은 출력을 생성합니다 -

+------------+-------------+
| Name       | count(Name) |
+------------+-------------+
| John-Smith |           2 |
| John-Doe   |           1 |
+------------+-------------+
2 rows in set (0.00 sec)