【问题标题】:orderBy & groupBy queryorderBy 和 group By 查询
【发布时间】:2012-07-22 16:19:43
【问题描述】:

我的数据库条目

id | shop_id | last_changed
1  |     1   |   7 pm
2  |     1   |   8 pm
3  |     2   |   9 pm
4  |     2   |   8 pm
5  |     3   |   5 pm

我的查询应该是我只得到带有 id 的条目:

2, 3, 5 

当我这样做时:

$q = Doctrine_Query::create()
         ->from('list e')
         ->groupBy('e.shopname_id')
         ->orderBy('e.last_changed DESC')
         ->limit(6)
         ->fetchArray();

我得到:1, 4, 5。即使我做e.last_changed ASC,它也不起作用。

我只想要那些具有last_changed 和不同shop_id 的条目。我该怎么做?

谢谢!

【问题讨论】:

    标签: mysql doctrine symfony-1.4 doctrine-1.2 doctrine-query


    【解决方案1】:

    试试这个:

    $q = Doctrine_Query::create()
            ->select('e.shopname_id, MAX(e.id) AS id, MAX(e.last_changed) AS last_changed')
            ->from('list e')
            ->groupBy('e.shopname_id')
            ->orderBy('MAX(e.last_changed) DESC')
            ->limit(6)
            ->fetchArray();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-06-12
      • 2021-12-19
      • 2018-05-24
      • 2017-05-19
      • 2019-01-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多