SELECT from Nobel Tutorial (SQLZoo第三部分)

参考表
1.更改查詢以顯示1950年諾貝爾獎的獎項資料。

-- 3.1 更改查詢以顯示1950年諾貝爾獎的獎項資料。
SELECT yr, subject, winner FROM nobel WHERE yr = 1950;

2.顯示誰贏得了1962年文學獎(Literature)。

-- 3.2 顯示誰贏得了1962年文學獎(Literature)。
SELECT winner FROM nobel WHERE yr = 1962 AND subject = 'Literature';

3.顯示“愛因斯坦”(‘Albert Einstein’) 的獲獎年份和獎項。

-- 3.3 顯示“愛因斯坦”('Albert Einstein') 的獲獎年份和獎項。
SELECT yr,subject FROM nobel WHERE winner = 'Albert Einstein';

4.顯示2000年及以後的和平獎(‘Peace’)得獎者。

-- 3.4 顯示2000年及以後的和平獎(‘Peace’)得獎者。
SELECT winner FROM nobel WHERE yr >= 2000 AND subject = 'Peace';

5.顯示1980年至1989年(包含首尾)的文學獎(Literature)獲獎者所有細節(年,主題,獲獎者)。

-- 3.5 顯示1980年至1989年(包含首尾)的文學獎(Literature)獲獎者所有細節(年,主題,獲獎者)。
SELECT yr,subject,winner FROM nobel WHERE yr >= 1980 AND yr <= 1989 AND subject = 'Literature';

6.顯示總統獲勝者的所有細節:
– 西奧多•羅斯福 Theodore Roosevelt
– 伍德羅•威爾遜 Woodrow Wilson
– 吉米•卡特 Jimmy Carter

-- 3.6 顯示總統獲勝者的所有細節:
-- 西奧多•羅斯福 Theodore Roosevelt
-- 伍德羅•威爾遜 Woodrow Wilson
-- 吉米•卡特 Jimmy Carter
SELECT yr,subject,winner FROM nobel WHERE winner in ('Theodore Roosevelt','Woodrow Wilson','Jimmy Carter');

7.顯示名字為John 的得獎者。 (注意:外國人名字(First name)在前,姓氏(Last name)在後)

-- 3.7 顯示名字為John 的得獎者。 (注意:外國人名字(First name)在前,姓氏(Last name)在後)
SELECT winner FROM nobel WHERE winner LIKE 'John%';

8.顯示1980年物理學(physics)獲獎者,及1984年化學獎(chemistry)獲得者。

-- 3.8 顯示1980年物理學(physics)獲獎者,及1984年化學獎(chemistry)獲得者。
SELECT * FROM nobel WHERE (yr = 1980 AND subject = 'physics') OR (yr = 1984 AND subject = 'chemistry');

9.查看1980年獲獎者,但不包括化學獎(Chemistry)和醫學獎(Medicine)。

-- 3.9 查看1980年獲獎者,但不包括化學獎(Chemistry)和醫學獎(Medicine)。
SELECT * FROM nobel WHERE yr = 1980 AND subject NOT IN('Chemistry','Medicine');

10.顯示早期的醫學獎(Medicine)得獎者(1910之前,不包括1910),及近年文學獎(Literature)得獎者(2004年以後,包括2004年)。

-- 3.10 顯示早期的醫學獎(Medicine)得獎者(1910之前,不包括1910),及近年文學獎(Literature)得獎者(2004年以後,包括2004年)。
SELECT * FROM nobel WHERE (yr < 1910 AND subject = 'Medicine') OR (yr >= 2004 AND subject = 'Literature');

11.查看 PETER GRÜNBERG 所获奖项的所有详细信息

-- 3.11 查看 PETER GRÜNBERG 所获奖项的所有详细信息
SELECT * FROM nobel WHERE winner = 'PETER GRÜNBERG';

12.查找尤金•奧尼爾EUGENE O’NEILL得獎的所有細節 Find all details of the prize won by EUGENE O’NEILL

-- 3.12 查找尤金•奧尼爾EUGENE O'NEILL得獎的所有細節 Find all details of the prize won by EUGENE O'NEILL
SELECT * FROM nobel WHERE winner = 'EUGENE O''NEILL';

13.騎士列隊 Knights in order
– 列出爵士的獲獎者、年份、獎頁(爵士的名字以Sir開始)。先顯示最新獲獎者,然後同年再按名稱順序排列。

-- 3.13 騎士列隊 Knights in order
-- 列出爵士的獲獎者、年份、獎頁(爵士的名字以Sir開始)。先顯示最新獲獎者,然後同年再按名稱順序排列。
SELECT winner,yr,subject FROM nobel WHERE winner LIKE 'Sir%' ORDER BY yr DESC,winner ASC;

14.表达式 subject IN (‘Chemistry’,‘Physics’) 可以用作值 - 它将是 0 或 1。
– 显示 1984 年的获奖者和受试者,按受试者和获奖者姓名排序;但最后列出化学和物理。

-- 3.14 表达式 subject IN ('Chemistry','Physics') 可以用作值 - 它将是 0 或 1。
-- 显示 1984 年的获奖者和受试者,按受试者和获奖者姓名排序;但最后列出化学和物理。
SELECT winner,subject FROM nobel WHERE yr = 1984 ORDER BY
                 CASE WHEN subject IN ('Chemistry','Physics') THEN 1 ELSE 0 END
                 ,subject ASC,winner ASC;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值