Bootstrap

LeetCode-SQL-595-大的国家

LeetCode-SQL-595-大的国家

大家好,我是Peter~

本文讲解的是LeetCode-SQL的第595题目,题目名为:大的国家

难易程度:简单。之前做的LeetCode-SQL-182-查找重复的电子以为是最简单的,没想到:这题更简单!!

题目

从给定的表中找出满足两个条件的国家,称之为大国家

思路

个人方法

直接通过where语句,带上or条件来完成:简单粗暴的解法!!!

select 
    name
    ,population
    ,area
from World 
where area > 3000000
or population > 25000000; 

官方思路

官方给定的答案也有自己的思路,还有另外一种:通过union来进行联结:

SELECT
    name, population, area
FROM world
WHERE area > 3000000

UNION   -- 关键字

SELECT
    name, population, area
FROM world
WHERE population > 25000000

两种方法的比较:

使用"OR"会全表扫描,可能导致索引失效,使用UNION会使用索引列, 查询速度更快,"UNION"会去重, "UNION ALL"不会去重

;