Php 基于表中最新150个条目的SQL计数元素

Php 基于表中最新150个条目的SQL计数元素,php,sql,Php,Sql,我正在尝试更改目前的两个SQL查询,以便除了从表中获得结果外,它只根据表中最新的150个条目提供结果 我目前的两个问题是: SELECT COUNT(*) FROM `stock`.`replacements.archive` WHERE `ciref` = '$cihistory' 及 我有办法做到这一点吗? 表中的id字段是正常使用的,所以猜测会用到它,但我不知道如何实现它 这里的目的是仅根据表中最近的150个条目计算变量,我不想计算表中的所有内容 任何人有任何想法都将不胜感激 谢谢假设您

我正在尝试更改目前的两个SQL查询,以便除了从表中获得结果外,它只根据表中最新的150个条目提供结果

我目前的两个问题是:

SELECT COUNT(*)
FROM `stock`.`replacements.archive`
WHERE `ciref` = '$cihistory'

我有办法做到这一点吗? 表中的id字段是正常使用的,所以猜测会用到它,但我不知道如何实现它

这里的目的是仅根据表中最近的150个条目计算变量,我不想计算表中的所有内容

任何人有任何想法都将不胜感激


谢谢

假设您有自动递增id,您可以选择最新的150个条目作为

    SELECT * 
    FROM `stock`.`replacements.archive` 
    ORDER BY id limit 150 
然后对该子查询执行如下查询:

    SELECT `req_model`, COUNT(`req_model`) AS `value_occurrence` 
    FROM (  
        SELECT * 
        FROM `stock`.`replacements.archive` 
        ORDER BY id DESC  limit 150 
    ) t
    GROUP BY `req_model` 
    ORDER BY `value_occurrence` 

发生了什么。。表存货。。。??以及如何定义新条目。。您有一个自动增量id。。或创建日期的行。(请记住,sql没有预先指定的dedfualt order by)。。您应该添加适当的数据样本和预期结果在派生表或CTE中使用150个“最新”行限制,并在外部选择样本数据中计数,预期结果将阐明您的意思。编辑:此处的目的是仅根据表中最新的150个条目对变量进行计数,我不想把桌子上的东西都数出来。这有帮助吗?你的意思是按id描述订购?谢谢,这很有效,我在评论之前发现了按id描述订购:)
    SELECT `req_model`, COUNT(`req_model`) AS `value_occurrence` 
    FROM (  
        SELECT * 
        FROM `stock`.`replacements.archive` 
        ORDER BY id DESC  limit 150 
    ) t
    GROUP BY `req_model` 
    ORDER BY `value_occurrence`