zoukankan      html  css  js  c++  java
  • sqlzoo答案--sum and count

    1.展示世界的總人口。

    SELECT sum(population)
    FROM world

    2.列出所有的洲份, 每個只有一次。

    select distinct continent
    from world

    3.找出非洲(Africa)的GDP總和。

    select sum(gdp)
    from world
    where continent='africa'

    4.有多少個國家具有至少百萬(1000000)的面積。

    select count(name)
    from world
    where area>1000000

    5.('France','Germany','Spain')(“法國”,“德國”,“西班牙”)的總人口是多少?

    select sum(population)
    from world
    where name in ('france','germany','spain')

    6.對於每一個洲份,顯示洲份和國家的數量。

    select continent,count(name)
    from world
    group by continent

    7.對於每一個洲份,顯示洲份和至少有1000萬人(10,000,000)口國家的數目。

    select continent,count(name)
    from world
    where population>=10000000
    group by continent

    8.列出有至少100百萬(1億)(100,000,000)人口的洲份。

    select continent
    from world
    group by continent
    having sum(population)>=100000000

    The nobel table can be used to practice more SUM and COUNT functions./zh

    1.找出總共有多少個獎頒發了。

    SELECT COUNT(winner) FROM nobel

    2.列出每一個獎項(subject), 只列一次

    select distinct subject
    from nobel

    3.找出物理獎的總頒發次數。

    select count(winner)
    from nobel
    where subject='physics'

    4.對每一個獎項(Subject),列出頒發數目。

    select subject ,count(winner)
    from nobel
    group by subject

    5.對每一個獎項(Subject),列出首次頒發的年份。

    select distinct subject,yr
    from nobel x
    where yr=(select min(yr) from nobel y where y.subject=x.subject )
    order by subject

    另:

    在网上找到一种更为简单利落的方法

    select subject,min(yr)

    from nobel

    group by subject

    6.對每一個獎項(Subject),列出2000年頒發的數目.

    select subject,count(winner)
    from nobel
    where yr=2000
    group by subject

    7.對每一個獎項(Subject),列出有多少個不同的得獎者。

    select subject ,count(distinct winner)
    from nobel
    group by subject

    8.對每一個獎項(Subject),列出有多少年曾頒發過。

    select subject,count(distinct yr)
    from nobel
    group by subject

    9.列出哪年曾同年有3個物理獎Physics得獎者。

    select t.yr
    from
    (select yr,count(winner)
    from nobel
    where subject='Physics'
    group by yr
    having count(winner)=3) t

    10.列出誰得獎多於一次。

    select t.winner
    from (select winner,count(subject)
    from nobel
    group by winner
    having count(subject)>1)t

    11.列出誰獲得多於一個獎項(Subject)

    select t.winner
    from (select winner,count(distinct subject)
    from nobel
    group by winner
    having count(distinct subject)>1)t

    12.哪年哪獎項,是同一獎項(subject)頒發給3個人。只列出2000年及之後的資料。

    select t.yr,t.subject
    from(select yr,subject,count(winner)
    from nobel
    where yr>1999
    group by yr,subject
    having count(winner)=3) t

  • 相关阅读:
    《C++标准程序库》 第6章 STL Container
    《C++语言99个常见编程错误》
    单例模式
    《C++标准程序库》 第7章 Iterator Adapters
    Shell颜色封装(C++)
    《改善C++程序的150个建议》
    OpenCV之图片的创建、保存和复制
    XMLDOM对象方法:对象事件
    三国中最精辟的十句话
    中国十大名茶及鉴别方法
  • 原文地址:https://www.cnblogs.com/ellencc/p/11984476.html
Copyright © 2011-2022 走看看