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

标签 mysql zend-framework

有什么方法可以选择 NULL 作为 Zend_db 的列。 为了清楚起见,您可以编写一个查询:

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->query('') 不是一个选项)?

最佳答案

您是否尝试过使用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);

关于mysql - 使用 Zend_Db 选择填充 NULL 的列别名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25990485/

相关文章:

mysql - 在数据库中存储用户密码/数据

php - 在 php 准备语句中从另一个字符串添加到数组

mysql - 错误 ('datetime.datetime' 对象在 Django 1.11.4 中没有属性 'split')

php - 如何将 MySQL 配置为 Zend DB Adapter 中的适配器

php - 我如何使用每个模块 Bootstrap ?

php - 我应该如何组织基于框架的项目的源代码控制?

zend-framework - 在 Bootstrap 中获取 Controller 名称

mysql - Clojure HoneySQL - 如何将连接后的字符串值聚合到单行中?

mysql - 请求帮助通过 python 读取 mariadb 中的 blob 数据类型

zend-framework - Zend Framework - 在嵌套查询上应用 order by