我想选择多个按描述排序的行。例如,我想为Kandy、Ampara和Anuradhapura选择最后添加的行。。请从下面的链接查看我的数据库的屏幕截图。
我试过:

SELECT thripstot, g_midgetot, l_foldertot
FROM pest_data
WHERE district = 'ampara' OR district = 'kandy' OR district = 'anuradhapura'
order by id desc
limit 0,1;

这并不能提供我需要的结果。

最佳答案

如果我确实理解您的意思,那么您需要获取district子句中定义的每个指定where的最新记录。
如果设置为AutoPype增量列,则可以使用子查询,通过最大的district分别获取每个ID的最新记录。为了从选定的最新行中获取所有行,您需要将其与原始表连接,前提是它与districtID上的匹配。

SELECT  a.thripstot, a.g_midgetot, a.l_foldertot
FROM    tableName a
        INNER JOIN
        (
            SELECT  district, MAX(id) max_id
            FROM    tableName
            GROUP   BY district
        ) b ON  a.district = b.district AND
                a.id = b.max_id
WHERE   a.district IN ('ampara','kandy', 'anuradhapura')

关于php - 如何使用ORDER BY选择多行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15596555/

10-11 01:55