我有以下SQL
SELECT i_id AS "entity_id", "entity_1" AS "type"
FROM tbl_extensions WHERE ext = 50
返回结果和附加列“type”,其值为“entity_1”
获得与Zend_Db一样的尝试:
$db->fetchAll($db->select()
->from('tbl_extensions',
array('entity_id' => 'i_id',
'type' => 'entity_1'))
->where('ext = ?', 50)));
但我有以下错误:
消息:SQLSTATE [42S22]:找不到列:1054'字段列表'中的未知列'tbl_extensions.type'
看起来Zend试图找到一列而不是在结果中创建它。
有人可以帮我吗?
答案 0 :(得分:1)
最简单的解决方案是使用Zend_Db_Expr
。
$db->fetchAll($db->select()
->from('tbl_extensions',
array(
'entity_id' => 'i_id',
new Zend_Db_Expr('"entity_1" AS "type"'),
)
)
->where('ext = ?', 50));