Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql SQL-无列计数和的舍入小数_Mysql_Sql_Count_Decimal_Rounding - Fatal编程技术网

Mysql SQL-无列计数和的舍入小数

Mysql SQL-无列计数和的舍入小数,mysql,sql,count,decimal,rounding,Mysql,Sql,Count,Decimal,Rounding,如何在没有列的情况下对计数和的小数进行四舍五入。ROUND()的使用需要一列,所以我不知道。我尽量不创建更多的列 这是我到目前为止所做的工作,它可以工作,但是它显示了太多的小数(0后面的4)。请注意,选择短语位于括号中的原因是因为它位于另一个选择短语中)。重要的是我的代码可以工作,但我不能去掉小数 (SELECT (COUNT(v.id) * r.res_cpm/1000) FROM databasename_viewcounter v WHERE v.subject_id = r.subjec

如何在没有列的情况下对计数和的小数进行四舍五入。ROUND()的使用需要一列,所以我不知道。我尽量不创建更多的列

这是我到目前为止所做的工作,它可以工作,但是它显示了太多的小数(0后面的4)。请注意,选择短语位于括号中的原因是因为它位于另一个选择短语中)。重要的是我的代码可以工作,但我不能去掉小数

(SELECT (COUNT(v.id) * r.res_cpm/1000)
FROM databasename_viewcounter v
WHERE v.subject_id = r.subject_id) AS cpm_revenue

FROM databasename_resources r 
WHERE r.order_id=:order_id
ORDER BY r.beginning ASC");

以下函数将select语句强制转换为
decimal

cast((COUNT(v.id) * r.res_cpm/1000)as decimal (10,2))

我试图得到两个小数而不是四个小数,不过还是要谢谢你!:)如果你不需要小数,这是一个很好的解决方案。我忘了说我需要两个。My bad.then使用
cast((COUNT(v.id)*r.res_cpm/1000)作为十进制(10,2))
这些都在MySQL中可用,而不仅仅是MS SQL Server吗?在Cast上找不到我的文档。不在w3schools上,dev.mysql没有相应的页面。只是说“类似于转换”:D发现只有这个:cast和convert应该对MS SQL和MySQL都有效。您使用的是哪种DBMS?神谕Postgres?@a_horse_,没有名字MySQL+InnoDB。