leedCode 大国家问题

这里有张World表

+-----------------+------------+------------+--------------+---------------+

| name | continent | area | population | gdp |

+-----------------+------------+------------+--------------+---------------+

| Afghanistan | Asia | 652230 | 25500100 | 20343000 |

| Albania | Europe | 28748 | 2831741 | 12960000 |

| Algeria | Africa | 2381741 | 37100000 | 188681000 |

| Andorra | Europe | 468 | 78115 | 3712000 |

| Angola | Africa | 1246700 | 20609294 | 100990000 |

+-----------------+------------+------------+--------------+---------------+

如果一个国家的面积超过300万平方公里,或者人口超过2500万,那么这个国家就是大国家。

编写一个SQL查询,输出表中所有大国家的名称、人口和面积。

例如,根据上表,我们应该输出:

+--------------+-------------+--------------+

| name | population | area |

+--------------+-------------+--------------+

| Afghanistan | 25500100 | 652230 |

| Algeria | 37100000 | 2381741 |

+--------------+-------------+--------------+

一、创建表的sql 略

知识点:可能是比较哪种查询方式比较快吧,比较基础的问题。

二、使用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

leetcode提供的耗时没有参考意义,相同sql多次执行耗时都不相同

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容