1

我目前正在运行此查询:

SELECT t.videolink, t.userid, t.tag
    FROM (SELECT * FROM tagstrend ORDER BY timestamp DESC) AS t
        WHERE t.timestamp > ?
        GROUP BY t.tag
        ORDER BY SUM(t.tagcount) DESC
        LIMIT ?, 20;

我正在做的是在运行其余查询之前反转我从中选择的表的顺序,因为当我使用“GROUP BY”时,我需要它来获取数据库中最新行的顶部结果.

但是,这样做会影响查询的性能/速度,因为它需要在查询表之前反转表的顺序。

我的问题是,有没有办法将表格的默认顺序设置为反转?因为我将始终以相反的顺序从该表中进行 SELECTing。

除非有人知道按数据库中最新行分组的方法?

4

1 回答 1

2

“但是这样做会影响查询的性能/速度,因为它需要在查询之前反转表的顺序。”

我不认为这是真的。Order By .... ASC 和 Order By .... DESC 应该具有相同的性能。测试一下看看。

于 2012-10-27T04:20:21.350 回答