下面3条select语句如何包含在一个mySQL视图中
需要创建一个执行以下3条select语句的视图 我能够在SQL编辑器中执行它们并获得比率下面3条select语句如何包含在一个mySQL视图中,mysql,view,Mysql,View,需要创建一个执行以下3条select语句的视图 我能够在SQL编辑器中执行它们并获得比率 select @lag := count(twitter_handles) from handle_impressions where today_impressions > yest_impressions; select @decay := count(twitter_handles) from handle_impressions where today_impressions < yes
select @lag := count(twitter_handles) from handle_impressions where today_impressions > yest_impressions;
select @decay := count(twitter_handles) from handle_impressions where today_impressions < yest_impressions;
select @ratio := @lag/@decay;
select@lag:=count(twitter\u handles)from handle\u impressions where today\u impressions>yest\u impressions;
选择@decay:=从今天的印象<是的印象中的印象中计数(twitter的印象);
选择@ratio:=@lag/@decay;
其目的是使用单个视图封装3条select语句,以返回lag、DECATION和ratio我们可以尝试使用条件聚合编写单个查询:
SELECT
COUNT(CASE WHEN today_impressions > yest_impressions THEN 1 END) AS lag_val,
COUNT(CASE WHEN today_impressions < yest_impressions THEN 1 END) AS decay_val,
COUNT(CASE WHEN today_impressions > yest_impressions THEN 1 END) /
COUNT(CASE WHEN today_impressions < yest_impressions THEN 1 END) AS ratio
FROM handle_impressions;
选择
将(今天的印象>是的印象然后1结束时的情况)计算为滞后值,
将(今天的印象<是的印象然后1结束时的情况)计算为衰退值,
计数(如果今天的印象>是的印象,则1结束)/
按比例计算(今天的印象<是的印象,然后1个结束时的情况)
从手感到印象;
当今天的印象=是的印象时,您错过了这个案例。这是故意的吗?您可能还希望有某种类型的措施来防止除以0。良好的捕获,将其中一个比较更改为