如果这个标题没有意义,请提出建议!
我正在做一个简单的(ish)统计查询,我有几列是时间开始的,在查看项目时时间结束。我想要做的是返回您可以将某个项目的视图归类为反弹的次数。
目前查询能够返回所有必要的信息,到目前为止它相当简单,但这部分我遇到了一些麻烦。
这是我确定目前的错误方法。
IF(((UNIX_TIMESTAMP(v.time_ended) - UNIX_TIMESTAMP(v.time_started)) < 5), 1,0) bounce
我需要尝试获取每行的 UNIX_TIMESTAMP(v.time_ended) 并从 UNIX_TIMESTAMP(v.time_started) 中扣除它,看看这个值是否小于我归类为“反弹”的 5,如果是的话 + 1 到弹跳栏。
我只返回 1 行数据,但不确定如何执行,任何帮助将不胜感激。
谢谢
强尼
更新代码
SELECT i.id,
i.title,
i.slug,
i.buyer_id as buyer_id,
i.date_added as date_added,
a.slug as area_slug,
COUNT(o.id) as offers,
COUNT(v.item_id) as total_item_views,
(COUNT(v.item_id) / COUNT(o.id)) conversion,
SUM(CASE WHEN v.time_ended - v.time_started < 5 THEN 1 ELSE 0 END)
FROM item as i
LEFT JOIN offer as o ON i.id=o.item_id
LEFT JOIN viewed_item as v ON i.id=v.item_id
INNER JOIN area as a ON a.id=i.area_id
WHERE i.id=3