我尝试运行此查询(current\u pop是表中国家的当前人口):
select country, current_pop/8000000000 from countries
我得到的是0。我很确定这是因为我把一个整数类型除以一个整数,所以它不会给我一个十进制数。我该怎么办?
xwmevbvl1#
你需要解决整数除法的问题。在这里,最简单的方法是将固定操作数转换为十进制数:
select country, current_pop/8000000000.0 from countries
n3schb8v2#
sqlite执行整数除法,所以 1 /2 = 0 .乘以 1.0 在任何整数被除数的计算中,sqlite会将数字转换为实数并执行实数除法:
1 /2 = 0
1.0
select country, 1.0 * current_pop/8000000000 from countries
2条答案
按热度按时间xwmevbvl1#
你需要解决整数除法的问题。在这里,最简单的方法是将固定操作数转换为十进制数:
n3schb8v2#
sqlite执行整数除法,所以
1 /2 = 0
.乘以
1.0
在任何整数被除数的计算中,sqlite会将数字转换为实数并执行实数除法: