SQL使用BETWEEN查询符合人口区间国家无结果问题排查
SQL区间查询结果错误排查
核心错误
你的语句里人口数值多写了1位0,筛选的区间和题目要求差了10倍量级,自然拿不到正确结果:
- 题目要求的第一个区间是1000万-2000万,对应数值是
10000000到20000000,你写的100000000、200000000实际筛的是1亿到2亿人口的国家 - 题目要求的第二个区间是4400万-5500万,对应数值是
44000000到55000000,你写的440000000、550000000实际筛的是4.4亿到5.5亿人口的国家
修正后的正确SQL
SELECT Id,Name,Capital,CurrencyCode,Population,EuropeUnionMember FROM Country WHERE (population BETWEEN 10000000 AND 20000000) OR (population BETWEEN 44000000 AND 55000000);
修正后的语句完全符合题目要求,保留了BETWEEN关键字的使用,两个筛选区间和题目要求完全匹配。
内容的提问来源于stack exchange,提问作者S.pachauri
相关产品推荐
相关产品推荐

