首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在SQL中选择/强制转换输出为整数

在SQL中选择/强制转换输出为整数
EN

Stack Overflow用户
提问于 2012-01-17 22:04:36
回答 3查看 95.1K关注 0票数 30

我在一个网站上工作,该网站要求我显示用户每天输入的平均数量的图表。我已经有一个SQL查询将此信息返回给我:

代码语言:javascript
复制
SELECT sum(number)/count(number) as average, date FROM stats WHERE * GROUP BY date

这给出了我想要的结果,但结果是三位小数精度的。我想对这个数字进行四舍五入。当然,我可以用PHP或我的模板引擎来完成,但我很好奇是否有一种方法可以在数据库中完成所有这些工作。

有没有办法将输出转换为整数(在MySQL中)?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-01-17 22:07:41

代码语言:javascript
复制
SELECT 
  CAST(sum(number)/count(number) as UNSIGNED) as average, 
  date 
FROM stats 
WHERE * 
GROUP BY date
票数 47
EN

Stack Overflow用户

发布于 2012-01-17 22:07:32

使用MySQL FORMAT函数怎么样?

代码语言:javascript
复制
mysql> SELECT FORMAT(12345.123456, 4);
+-------------------------+
| FORMAT(12345.123456, 4) |
+-------------------------+
| 12,345.1235             |
+-------------------------+
1 row in set (0.00 sec)

mysql> SELECT FORMAT(12345.123456, 0);
+-------------------------+
| FORMAT(12345.123456, 0) |
+-------------------------+
| 12,345                  |
+-------------------------+
1 row in set (0.00 sec)
票数 6
EN

Stack Overflow用户

发布于 2012-01-17 22:07:21

代码语言:javascript
复制
SELECT convert(int, sum(number)/count(number)) as average,
  date
FROM stats
WHERE * GROUP BY date

代码语言:javascript
复制
SELECT 
  CAST(sum(number)/count(number) as INT) as average, 
  date 
FROM stats 
WHERE * 
GROUP BY date
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8895927

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档