繁体   English   中英

计算 SQL 中的转换率

[英]Calculate conversion rate in SQL

下面的代码计算数据集的转换率。 与此问题相关的代码在第 13 行。当我计算转化率时,我将在网站上进行的购买总数除以网站上的用户总数(浏览人数)。 我得到的输出是 0.495,但我不明白为什么我需要在第 13 行开头的“1.0 *”才能工作? 我不知道这部分代码的目的,但没有它代码就无法工作。

在此处输入图片说明

您的代码不是 MySQL 代码。 MySQL 不支持标识符周围的方括号。 这样做的一种数据库是 SQL Server。 它进行整数除法。 因此,在 SQL Server 中, 1/20而不是0.5

* 1.0只是将整数转换为带小数点的值。

假设userid不是NULL ,这更容易表示为:

avg( is_purchase * 1.0 )

forpasGordon 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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM