這里有張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 |
+-----------------+------------+------------+--------------+---------------+
如果一個(gè)國家的面積超過300萬平方公里,或者人口超過2500萬,那么這個(gè)國家就是大國家。
編寫一個(gè)SQL查詢,輸出表中所有大國家的名稱、人口和面積。
例如,根據(jù)上表,我們應(yīng)該輸出:
+--------------+-------------+--------------+
| name | population | area |
+--------------+-------------+--------------+
| Afghanistan | 25500100 | 652230 |
| Algeria | 37100000 | 2381741 |
+--------------+-------------+--------------+
一、創(chuàng)建表的sql 略
知識(shí)點(diǎn):可能是比較哪種查詢方式比較快吧,比較基礎(chǔ)的問題。
二、使用or的方式,全表掃描。寫法簡單,常見方式
SELECT name,population,area FROM WORLD WHERE AREA > 3000000 OR POPULATION >25000000
三、使用union的方式,范圍掃描。數(shù)據(jù)量大時(shí),會(huì)更快
SELECT name,population,area FROM WORLD WHERE AREA > 3000000?
union
SELECT name,population,area FROM WORLD WHERE POPULATION >25000000
leetcode提供的耗時(shí)沒有參考意義,相同sql多次執(zhí)行耗時(shí)都不相同