使用Zend_Db选择用NULL填充的列别名

时间:2014-09-23 08:34:59

标签: mysql zend-framework

有没有办法可以使用Zend_db选择NULL作为列。 为清楚起见,您可以编写一个查询:

SELECT id, name, age, NULL as ssn from dummy_table; 

结果将有4列id,name,age和ssn(填充为null)。在Zend_Db中有没有办法做到这一点。我的猜测是:

$columns = [
    'id' => 'id',
    'name' => 'name',
    'age' => 'age',
    NULL => 'ssn'
];
$select = $this->_db->select();
$select
    ->from('dummy_table', $columns)

但是它不会起作用,它会产生:

SELECT `dummy_table`.`id` AS `id`, `dummy_table`.`name` AS `name`, `dummy_table`.`age` AS `age`, `dummy_table`.`ssn` AS `` FROM `dummy_table`;

此查询将失败。你有没有办法只使用Zend_Db($ this-> _db->查询('')不是一个选项)?

1 个答案:

答案 0 :(得分:1)

您是否尝试过使用new Zend_Db_Expr('NULL')

你可以这样做:

$null = new Zend_Db_Expr('NULL');

$columns = [
    'id' => 'id',
    'name' => 'name',
    'age' => 'age',
    $null => 'ssn'
];
$select = $this->_db->select();
$select
    ->from('dummy_table', $columns);