小编Rom*_*onz的帖子

zf2\Zend\Db\Sql\Sql在where where condition中使用谓词

我真的不明白如何在zend框架2中使用谓词.

这就是我得到的:

$sql->select()
        ->columns(array('GroupedColum'
            ,'minValue' => new Expression('min(ValueColumn)')))
        ->from('ValueTable')
        ->group('GroupedColum')
        ->order('minValue')
        ->order('GroupedColum')
        ->limit(10);
Run Code Online (Sandbox Code Playgroud)

这工作正常

现在我想申请一些这样的东西:

$predicate = new Zend\Db\Sql\Predicate\Predicate();
$sql->where($predicate->greaterThan('filterColumn','20);
Run Code Online (Sandbox Code Playgroud)

这是我试过的,它没有抛出任何错误,但它不起作用:-(

这就是我期望的SQL:

select GroupedColum
    , min(ValueColumn) as minValue
from ValueTable
where filterColumn > 20
group by GroupedColum
order by minValue
    GroupedColum
limit 10;
Run Code Online (Sandbox Code Playgroud)

php zend-db zend-framework2

5
推荐指数
2
解决办法
1万
查看次数

标签 统计

php ×1

zend-db ×1

zend-framework2 ×1