SQL使用COUNT()的条件

时间:2016-03-27 09:10:46

标签: mysql

我最近开始学习SQL,而且我遇到了一些问题,我确信这并不是很困难,但我还没有找到答案。无论如何。假设我们有一张桌子: awesomeMovies

Dir    -- Title
George || Once
Lucas  || Upon
Star   || In a 
Wars   || In a

等...

如果我们这样做:

SELECT COUNT(title) FROM awesomeMovies GROUP BY title;

我们得到:

1

1

2

所以我的问题基本上是: 如何使用WHERE语句和COUNT语句仅显示表中存在的行两次? 我的意思是,

SELECT COUNT(title) FROM awesomeMovies GROUP BY title WHERE COUNT(title)>1;

不起作用。任何帮助将不胜感激。提前谢谢你:D

2 个答案:

答案 0 :(得分:0)

以下查询将仅选择那些在awesomeMovies表格中存在多次的精彩电影的数量。

SELECT
    COUNT(title)
FROM awesomeMovies
GROUP BY title
HAVING  COUNT(title) > 1;

注意:

SQL语句的实际执行有点棘手。但是,该标准确实指定了查询中元素的解释顺序。这基本上是你指定的顺序,虽然我认为有和分组可以在select:

之后
 - FROM clause
 - WHERE clause
 - SELECT clause
 - GROUP BY clause
 - HAVING clause
 - ORDER BY clause

这是mysql查询构建器的可视化:

enter image description here

答案 1 :(得分:0)

使用Having

SELECT title,COUNT(title) 
FROM awesomeMovies 
GROUP BY title 
having COUNT(title)>1;

Having用于过滤组数据。