Difference between revisions of "SELECT from Nobel Tutorial"

From SQLZOO
Jump to: navigation, search
Line 1: Line 1:
  
<div>
+
  <h2><code>nobel</code> Nobel Laureates</h2>
 +
  <p>We continue practicing simple SQL queries on a single table.</p>
 +
  <p>This tutorial is concerned with a table of Nobel prize winners:
 +
  </p>
 +
  <pre style='width:20em;'>nobel(yr, subject, winner)</pre>
 +
 
 +
 
 +
<div style='float:left'>
 
<table class='db_ref'>
 
<table class='db_ref'>
 
<caption>nobel</caption>
 
<caption>nobel</caption>
Line 31: Line 38:
 
</table>
 
</table>
 
</div>
 
</div>
  <h2><code>nobel</code> Nobel Laureates</h2>
 
  <p>We continue practicing simple SQL queries on a single table.</p>
 
  <p>This tutorial is concerned with a table of Nobel prize winners:
 
  </p>
 
  <pre style='width:20em;'>nobel(yr, subject, winner)</pre>
 
  
  

Revision as of 05:25, 18 July 2012

nobel Nobel Laureates

We continue practicing simple SQL queries on a single table.

This tutorial is concerned with a table of Nobel prize winners:

nobel(yr, subject, winner)


nobel
yr subject winner
1960 Chemistry Willard F. Libby
1960 Literature Saint-John Perse
1960 Medicine Sir Frank Macfarlane Burnet
1960 Medicine Peter Medawar
...


Exercises

Using the SELECT statement.

Change the query shown so that it displays Nobel prizes for 1950.

SELECT yr, subject, winner
  FROM nobel
 WHERE yr = 1960
SELECT yr, subject, winner
  FROM nobel
 WHERE yr = 1950

Show who won the 1962 prize for Literature.

SELECT winner
  FROM nobel
 WHERE yr = 1960
   AND subject = 'Physics'
SELECT winner
  FROM nobel
 WHERE yr = 1962
   AND subject = 'Literature'

Show the year and subject that won 'Albert Einstein' his prize.

 
SELECT yr, subject
FROM nobel
WHERE winner = 'Albert Einstein'


Give the name of the 'Peace' winners since the year 2000, including 2000.

 
SELECT winner
FROM nobel
WHERE subject = 'Peace'
AND yr >= 2000

Show all details (yr, subject, winner) of the Literature prize winners for 1980 to 1989 inclusive.

 
SELECT yr,subject,winner
FROM nobel
WHERE subject = 'Literature'
AND yr BETWEEN 1980 AND 1989

Show all details of the presidential winners: ('Theodore Roosevelt', 'Woodrow Wilson', 'Jed Bartlet', 'Jimmy Carter')

SELECT * FROM nobel
 WHERE yr = 1970
  AND subject IN ('Cookery',
                  'Chemistry',
                  'Literature')
SELECT * FROM nobel
 WHERE winner IN ('Theodore Roosevelt', 
                  'Woodrow Wilson', 
                  'Jed Bartlet', 
                  'Jimmy Carter')

Show the winners with first name John

 
SELECT winner FROM nobel
  WHERE winner LIKE 'John %'

In which years was the Physics prize awarded but no Chemistry prize. (WARNING - this question is way too hard for this level, you will need to use sub queries or joins).

 
SELECT DISTINCT yr 
FROM nobel 
WHERE subject='Physics' AND yr NOT IN
(SELECT yr FROM nobel 
WHERE subject='Chemistry')

Nobel Quiz

Personal tools
Namespaces

Variants
Actions
Reference
Toolbox
Google AdSense