子查询

2018-06-28  本文已影响0人  yz_wang

嵌套SELECT语句也叫子查询,一个 SELECT 语句的查询结果能够作为另一个语句的输入值。子查询不但能够出现在Where子句中,也能够出现在from子句中,作为一个临时表使用,也能够出现在select list中,作为一个字段值来返回。

select ename,deptno,sal
from emp
where deptno=(select deptno from dept where loc='NEW YORK');




给出人口多于Russia(俄国)的国家名称

SELECT name FROM bbc
WHERE population>
(SELECT population FROM bbc
WHERE name='Russia')




给出'India'(印度), 'Iran'(伊朗)所在地区的任何国家的任何信息

SELECT * FROM bbc
WHERE region IN
(SELECT region FROM bbc
WHERE name IN ('India','Iran'))




给出人均GDP超过'United Kingdom'(英国)的欧洲国家

SELECT name FROM bbc
WHERE region='Europe' AND gdp/population >
(SELECT gdp/population FROM bbc
WHERE name='United Kingdom')




SELECT Score, (  
  SELECT COUNT(*)   
  FROM (  
    SELECT DISTINCT Score S   
    FROM Scores  
  ) AS Tmp  
  WHERE S >= Score  
) AS Rank  
FROM Scores  
ORDER BY Score DESC;  


上一篇 下一篇

猜你喜欢

热点阅读