Zend framework Zend framework-Zend_db_table_abtract select()

Zend framework Zend framework-Zend_db_table_abtract select(),zend-framework,zend-db-table,Zend Framework,Zend Db Table,我想使用select(),在这里我可以只获得一列而不指定表名。(表名在我的模型中声明的$_name变量中。)我尝试了以下方法: $select->columns('field'); 。。但我得到的错误是“没有为FROM子句指定表”-所以看起来它需要一个表名 有没有办法只获取一列?如果您的类扩展了Zend\u Db\u Table\u Abstract,您可以使用$this->fetchAll(),因此不需要指定表名 如果仍要使用select()传递$this->\u name,因为您已经

我想使用
select()
,在这里我可以只获得一列而不指定表名。(表名在我的模型中声明的$_name变量中。)我尝试了以下方法:

$select->columns('field');
。。但我得到的错误是“没有为FROM子句指定表”-所以看起来它需要一个表名


有没有办法只获取一列?

如果您的类扩展了
Zend\u Db\u Table\u Abstract
,您可以使用
$this->fetchAll()
,因此不需要指定表名

如果仍要使用
select()
传递
$this->\u name
,因为您已经声明了值
$\u name

$this->select()->from($this->_name);

select()
主要用于创建一个select查询对象,因此它无法猜测您当前在模型中要访问哪个表。它可能不适用于同一表上的查询。因此,您应该传递表名。有关更多信息,请参阅。所有这些都是为了不同的目的。因此,您希望根据自己的意愿使用。

如果您的类扩展了
Zend\u Db\u Table\u Abstract
,则可以使用
$this->fetchAll()
,因此无需指定表名

如果仍要使用
select()
传递
$this->\u name
,因为您已经声明了值
$\u name

$this->select()->from($this->_name);

select()
主要用于创建一个select查询对象,因此它无法猜测您当前在模型中要访问哪个表。它可能不适用于同一表上的查询。因此,您应该传递表名。有关更多信息,请参阅。所有这些都是为了不同的目的。因此,您希望根据自己的意愿使用。

错误是正确的。您需要指定一个要从中获取字段的表

$select->from('table_name', array('field'));

错误是正确的。您需要指定一个要从中获取字段的表

$select->from('table_name', array('field'));

$select
从哪里来?
$select
从哪里来?使用$this->\u fetch()如何指定列名?对不起,我的意思是如何指定没有表名的列名?所有列都将被提取。或者简单地说,
select()
就是这样开发的。或者,您希望扩展并进行必要的更改,以便按照您的要求工作。使用$this->\u fetch()如何指定列名?对不起,我的意思是如何指定没有表名的列名?将获取所有列。或者简单地说,
select()
就是这样开发的。或者,您希望扩展并进行必要的更改,以便按照您的要求工作。