sqlzoo 3.SELECT from Nobel 答案

12 篇文章 0 订阅
本文是一系列SQL查询练习,涉及诺贝尔奖数据集。涵盖了不同年份的获奖者、特定学科的获奖者、特定人物的获奖情况、最近的和平奖、1980年代的文学奖等。还涉及了数据过滤、LIKE操作符、不包含特定学科的查询以及对数据的排序。
摘要由CSDN通过智能技术生成

有什么问题,欢迎评论或私聊。转载请私聊博主,谢谢。

原题链接:https://sqlzoo.net/wiki/Self_join

其他题解连接:https://blog.csdn.net/aiqiyizz/article/details/109057732

题解对应的是英文版题目。

3 SELECT from Nobel

3.1 Winners from 1950

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

3.2 1962 Literature

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

3.3 Albert Einstein

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

3.4 Recent Peace Prizes

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

3.5 Literature in the 1980’s

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

3.6 Only Presidents

SELECT * FROM nobel
 WHERE winner IN ('Theodore Roosevelt',
                  'Woodrow Wilson',
                  'Jimmy Carter',
                  'Barack Obama')

3.7 John

SELECT winner
FROM nobel
WHERE winner LIKE 'John%'

3.8 Chemistry and Physics from different years

SELECT *
FROM nobel
WHERE (yr = 1980 AND subject = 'physics')
OR (yr = 1984 AND subject = 'chemistry')

3.9 Exclude Chemists and Medics

SELECT *
FROM nobel
WHERE yr = 1980 AND subject NOT IN ('Chemistry ', 'Medicine')

3.10 Early Medicine, Late Literature

SELECT *
FROM nobel
WHERE (yr < 1910 AND subject = 'Medicine')
OR (yr >= 2004 AND subject = 'Literature')

3.11 Umlaut

SELECT *
FROM nobel
WHERE winner = 'PETER GRÜNBERG'

3.12 Apostrophe

SELECT *
FROM nobel
WHERE winner = 'EUGENE O\'NEILL'

3.13 Knights of the realm

SELECT winner, yr, subject
FROM nobel
WHERE winner LIKE 'Sir%'
ORDER BY yr DESC, winner

3.14 Chemistry and Physics last

先按照第一项排序可以使得物理和化学排到末尾

SELECT winner, subject
  FROM nobel
 WHERE yr=1984
 ORDER BY subject IN ('Physics','Chemistry'),subject,winner
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值