【问题标题】:PHP select and mark recent entry from all MYSQL resultsPHP 从所有 MYSQL 结果中选择并标记最近的条目
【发布时间】:2016-06-10 12:34:07
【问题描述】:

我有一个按添加日期降序排列的 sql 条目的 while 循环。 当每个条目被激活时,还有一个名为激活的第二个日期列(只需单击条目)。

一旦显示所有条目并按日期排序,我想为具有最新激活日期的条目添加特殊样式,该日期不等于添加日期。所有其他条目都没有特殊样式。

有没有人知道一个简单的 php 日期解决方案来确定具有最新激活日期的条目?

【问题讨论】:

    标签: php mysql loops while-loop


    【解决方案1】:

    在 mysql 中已经有一种方法可以做到这一点:

    SELECT <your other stuff>, (IF(activated_date = (SELECT MAX(activated_date) FROM your_TABLE WHERE activated_date != added_date ), 1,0)) as last_entrie FROM your_table <your ORDER BY stuff>
    

    这样,与added_date 不同的最高activated_date 的行将与last_entrie 具有1,而其余的具有0。然后,您可以使用该信息突出显示该行PHP。

    我还没有尝试过 PHP 解决方案,但是有了这个,您无需遍历 PHP 中的所有数据即可找到满足您需求的最高条目。

    【讨论】:

    • 感谢这个想法,我考虑过将其用作最后的手段。我还在寻找一个纯 php 的解决方案,它可能会节省一些资源。
    • @120382833 让您的数据库进行数据操作通常是个好主意。当然,除非你认为你可以重新发明一个更好的轮子。机会是:可能不会。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-09-28
    • 2017-03-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-21
    相关资源
    最近更新 更多