我有一个当前定义为的视图

CREATE VIEW riders AS选择rideloguid AS rid,sum(ridelogdistance)AS distanceridelog组中按rideloguid

我想做的是添加第二个字段,显示距离y-t-d。即自本年1月1日起发生的乘车距离之和。

问题是,我不知道如何在mysql中说“当前年份”,或者是否可以创建一个视图,其中包含不同标准的总和。

这可能吗?

最佳答案

只要您的视图应始终包含当前年份的列,就可以做到这一点。

CREATE VIEW riders AS
    SELECT
        ridelog.uid AS rid,
        SUM(ridelog.distance) AS distance,
        SUM(IF(YEAR(ridelog.<<date_time_column>>) = YEAR(NOW()), ridelog.distance, 0) AS distanceThisYear
    FROM ridelog
    GROUP BY ridelog.uid


使用这种方法,您无法指定要计算距离的年份。另一种可能性是使用year作为其参数的存储过程。

关于sql - 需要帮助来创建包含两个不同总和的 View ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1032582/

10-13 04:47