[英]Calculate conversion rate in SQL
您的代码不是 MySQL 代码。 MySQL 不支持标识符周围的方括号。 这样做的一种数据库是 SQL Server。 它进行整数除法。 因此,在 SQL Server 中, 1/2
是0
而不是0.5
。
* 1.0
只是将整数转换为带小数点的值。
假设userid
不是NULL
,这更容易表示为:
avg( is_purchase * 1.0 )
forpas和Gordon Linoff是正确的,SQL Server 默认执行整数除法。 将来,对于更复杂的计算,您可以使用 CTE 或使用 CAST 的子查询在除法之前将值表示为浮点值。 例如,在第 6-7 行,您将拥有:
CAST(p.userid IS NOT NULL AS float) AS is_purchase
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.