查找表中总值和不同值之间的差异

Bla*_*Cat 2 sql database sql-server

输入表:城市

  +-----------+
  |   Name    |
  +-----------+
  |   AAA     |
  +-----------+
  |   AAA     |
  +-----------+
  |   BBB     |
  +-----------+
  |   CCC     |
  +-----------+
Run Code Online (Sandbox Code Playgroud)

表格City有一列Name.我想要输出将返回城市名称的总数和城市名称的不同数量之间的差异.

如果是这个表,结果将是1.

Mat*_*att 10

使用COUNTDISTINCT COUNT.

SELECT COUNT(name)-COUNT(DISTINCT name) AS nameDifference
FROM city
Run Code Online (Sandbox Code Playgroud)

输出:

nameDifference
1
Run Code Online (Sandbox Code Playgroud)