Php 使用postgress在zend框架中按日期分组

Php 使用postgress在zend框架中按日期分组,php,zend-framework,postgresql,Php,Zend Framework,Postgresql,因此,我有以下疑问: public function findByDateCreated($date){ $select = $this->select(); $select->where('dtcreated = ?', $date); $select->group('date'); $rows = $this->fetchAll($select); if(count($rows) >

因此,我有以下疑问:

public function findByDateCreated($date){
        $select = $this->select();
        $select->where('dtcreated = ?', $date);
        $select->group('date');
        $rows = $this->fetchAll($select);
        if(count($rows) > 0){
            return $rows[0];
        }else{
            return false;
        }
    }
这会引发错误:

500: SQLSTATE[42703]: Undefined column: 7 ERROR: column "date" does not exist LINE 1: ...E (dtcreated = '2012-10-17 14:26:41.575479') GROUP BY "date" ^
我的问题是:

如何按日期分组,以便获得:

17-10-2012
One item
two item
three item

16-10-2012
oneitem
twoitem
threeitem
等等

我看不出这有什么帮助,但是:

create table users_notifications(
    id  int primary key default nextval('users_notifications_id_seq') not null,
    userid int not null references users(id),
    itemid int not null,
    itemtype varchar(75),
    dtcreated timestamp not null default now(),
    dtupdated timestamp default now(),
    message text,
    flag boolean,
    flagnew boolean
);

这就是表格的外观。

错误是因为您没有名为
date的列,因此无法按该列进行分组

试试这个:

$select->group(new Zend_Db_Expr("date_trunc('hour', dtcreated)"));

这将截短所有datetime,使其仅包含年、月、日组件,然后根据这些结果值进行分组。

是否可以编辑帖子以添加表结构<代码>描述我的表格
对不起:表格结构?-补充。看不出它有什么帮助。我无法访问终端来描述表格。我只能访问PostgreSQL GUI仍然是相同的愚蠢错误:分组错误:7错误:列“users\u notifications.id”必须出现在GROUP BY子句中或用于聚合函数