sql使用select in子查询和联接
我正在尝试回答SQLZoo.net网站上的问题8。这里是链接。这应该很简单,但我认为我只是过度考虑了自己。以下是链接:sql使用select in子查询和联接,sql,select,join,Sql,Select,Join,我正在尝试回答SQLZoo.net网站上的问题8。这里是链接。这应该很简单,但我认为我只是过度考虑了自己。以下是链接: 实际上并不需要子查询,而是一个简单的自连接。通过使用LEFT JOIN将表与自身连接起来,您可以获得所需的结果,但是在连接表的过程中,您需要在on子句中筛选化学主题的年份 SELECT DISTINCT a.yr FROM nobel a LEFT JOIN nobel b ON a.yr = b.yr AND b.subject
实际上并不需要子查询,而是一个简单的自连接。通过使用LEFT JOIN将表与自身连接起来,您可以获得所需的结果,但是在连接表的过程中,您需要在on子句中筛选化学主题的年份
SELECT DISTINCT a.yr
FROM nobel a
LEFT JOIN nobel b
ON a.yr = b.yr AND b.subject = 'Chemistry'
WHERE b.yr IS NULL AND
a.subject = 'Physics'
select distinct yr
from nobel
where subject='Physics'
and yr not in ( select yr from nobel where subject='Chemistry')