Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 统计:将以前的值与实际值、数据库结构进行比较_Php_Mysql_Database - Fatal编程技术网

Php 统计:将以前的值与实际值、数据库结构进行比较

Php 统计:将以前的值与实际值、数据库结构进行比较,php,mysql,database,Php,Mysql,Database,我想知道实际值是否高于前一周的-7个日历日。因此我可以展示信息及其演变: 对于这种情况,我谈论的是我的工作项帖子的状态。这是我的表格请参见状态和状态\u上次更新: 因此,为了实现这一新功能,我考虑两种解决方案。我想知道哪一个更好,原因是什么。或者如果有更好的解决办法 第一个解决方案:我在实际表previous\u status previous\u status\u last\u update中再添加两列 第二种解决方案:我创建一个新表,用于存储以前的状态及其上次更新的日期 第三种解决方案:我创

我想知道实际值是否高于前一周的-7个日历日。因此我可以展示信息及其演变:

对于这种情况,我谈论的是我的工作项帖子的状态。这是我的表格请参见状态和状态\u上次更新:

因此,为了实现这一新功能,我考虑两种解决方案。我想知道哪一个更好,原因是什么。或者如果有更好的解决办法

第一个解决方案:我在实际表previous\u status previous\u status\u last\u update中再添加两列

第二种解决方案:我创建一个新表,用于存储以前的状态及其上次更新的日期

第三种解决方案:我创建一个表,存储实际值和以前的值:

NBU新 注意:最新更新 nb_正在讨论中 nb\u正在讨论中\u上次更新 你喜欢什么 注意,您喜欢上次更新 不喜欢 注意:您不喜欢上次更新 NBU批准 注意:上次更新获得批准 NBU被拒绝 注意:上次更新被拒绝

nb_新的(旧的)

注意:新增上次更新上次更新 nb\u正在讨论中\u之前 nb\u正在讨论中\u上次\u更新\u上次 注意,你喜欢上一次 注意:您喜欢上次更新上次更新 注意:你不喜欢你以前的工作 注意\u不喜欢\u上次\u更新\u上次 nb_已批准_之前 注意\u已批准\u上次更新\u上次 nb_拒绝_之前 注意:拒绝上次更新上次更新
为什么不在SQL语句中插入一点逻辑,将上周和本周的数据拉入一行,如下所示:

select
    sub.thisWeekStatus,
    sub.lastWeekStatus,
    sub.someOtherColumn
from
    (
        select
            case
                when dateField=cur_date() then status
            end as thisWeekStatus,
            case
                when dateField<>cur_date() then status
            end as lastWeekStatus,
            someOtherColumn
        from
            yourTable
        where
            dateField>'dateLastWeek'

    ) sub
group by
    sub.someOtherColumn

显然,您需要稍加修改,我没有费心使用日期函数来提取上周或任何数据,但这可以调整以满足您的确切规格。

2个符合规范化标准的表,但是它有点琐碎,可能懒得再加几个专栏。也许是这样做的计划,但直到现在我还没有注册任何上周状态。这就是为什么我的问题是关于数据库结构,如果我应该有2个表或1个包含更多信息列。但正如达贡所说,拥有两张桌子更符合实际,但有点琐碎。谢谢你的回答,以后可能会有用。