从 MySQL 中声明为 BIGINT 类型的电话号码列中获取唯一电话号码的数量

mysqlmysqli database

为此,您可以将 COUNT() 与 DISTINCT 一起使用。COUNT() 方法用于计数记录。但是,DISTINCT 返回不同的记录,而 COUNT() 方法则计数这些唯一记录。让我们首先创建一个表 −

mysql> create table DemoTable
(
   PhoneNumber bigint
);
Query OK, 0 rows affected (1.29 sec)

使用 insert 命令在表中插入一些记录 −

mysql> insert into DemoTable values(8567789898);
Query OK, 1 row affected (0.94 sec)
mysql> insert into DemoTable values(8567789898);
Query OK, 1 row affected (0.34 sec)
mysql> insert into DemoTable values(9876564534);
Query OK, 1 row affected (0.43 sec)
mysql> insert into DemoTable values(9087896545);
Query OK, 1 row affected (0.28 sec)
mysql> insert into DemoTable values(7656456589);
Query OK, 1 row affected (0.21 sec)
mysql> insert into DemoTable values(9876564534);
Query OK, 1 row affected (0.12 sec)
mysql> insert into DemoTable values(9087896545);
Query OK, 1 row affected (0.18 sec)

使用 select 语句显示表中的所有记录 −

mysql> select *from DemoTable;

这将产生以下输出 −

+-------------+
| PhoneNumber |
+-------------+
| 8567789898  |
| 8567789898  |
| 9876564534  |
| 9087896545  |
| 7656456589  |
| 9876564534  |
| 9087896545  |
+-------------+
7 rows in set (0.00 sec)

以下查询用于从包含电话号码的列中计算唯一电话号码 −

mysql> select count(distinct PhoneNumber) AS UniquePhoneNumber from DemoTable;

这将产生以下输出 −

+-------------------+
| UniquePhoneNumber |
+-------------------+
|                 4 |
+-------------------+
1 row in set (0.00 sec)

相关文章