FuelPHP查询生成器在多个字段上联接

FuelPHP查询生成器在多个字段上联接,php,mysql,sql,fuelphp,Php,Mysql,Sql,Fuelphp,我需要在各种参数上使用连接创建查询,如: SELECT foo.*, bar.* FROM foo LEFT JOIN bar ON foo.c1 = bar.c1 AND foo.c2 = bar.c2 WHERE foo c3 = "somedata"; 问题是我找不到如何使用FuelPHP查询生成器创建“和” 谢谢。一次连接就可以使用多个->打开。在这种情况下,生成器将使用“和”。组合它们。它们编译on条件的方式使得不可能设置像status=1这样的值 我将\u字符串上的函数添加到\Fu

我需要在各种参数上使用连接创建查询,如:

SELECT foo.*, bar.* FROM foo LEFT JOIN bar ON foo.c1 = bar.c1 AND foo.c2 = bar.c2 WHERE foo c3 = "somedata";
问题是我找不到如何使用FuelPHP查询生成器创建“和”


谢谢。

一次连接就可以使用多个->打开。在这种情况下,生成器将使用“和”。

组合它们。它们编译on条件的方式使得不可能设置像
status
=1这样的值

我将\u字符串上的函数添加到\Fuel\Core\Database\u Query\u Builder\u连接中

public function on_string($string) { 
    $this->_on_string = $string;
    return $this;
}
在compile()中

请将您的方法公开给数据库\u查询\u构建器\u选择

    public function on_string($string)
{
    $this->_last_join->on_string($string);

    return $this;
}

我认为这不是谭顺尧的要求。 您可以根据字符串进行选择,但需要对值进行如下转义:


->on('t.object_property','=',\DB::quote($property))

不知道FuelPHP,但他们的文档清楚地说明了如何使用它。例如
$result=DB::select()->from('foo')->join('bar','LEFT')->on('foo.c1','=','foo.c1')->where('foo.c3','somedata')->execute()
    public function on_string($string)
{
    $this->_last_join->on_string($string);

    return $this;
}