使用zf2中的列的静态值连接

时间:2013-08-17 15:17:25

标签: php join zend-framework2

我正在使用zend framework 2.2.2编写PHP应用程序。 我正在尝试使用包含静态值条件的连接创建一个选择查询。

这是我的代码:

    $this->select->join('global_image_link','global_image_link.table_pkey=drink_flavor.drink_flavor_id AND global_image_link.global_image_type_id=2',array())

现在查询结尾包含以下内容:

global_image_link.global_image_type_id=2

当我执行getSqlStringForSqlObject返回查询时,查询的结尾是

 AND `global_image_link`.`global_image_type_id`=`2`

因为它会为搜索名为2的列而不是数字2添加数字。

我想我需要以某种方式逃避这个数字或用一些类包装它。

如何解决问题?

感谢

1 个答案:

答案 0 :(得分:2)

尝试使用新的Zend_Db_Expr:

$this->select->join('global_image_link',new Zend_Db_Expr('global_image_link.table_pkey=drink_flavor.drink_flavor_id AND global_image_link.global_image_type_id=2'),array())

Zend_Db_Expr不会转义值,因此使用时要小心。