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子句中或用于聚合函数