Doctrine orm 条令2:类似于内部结构的querybuilder

Doctrine orm 条令2:类似于内部结构的querybuilder,doctrine-orm,dql,Doctrine Orm,Dql,使用QueryBuilder对象时,在内部使用like并具有以下内容: $queuebuilder->addSelect('c.customercount*5 as count'); $queuebuilder->add('having', 'count like \'sometext\''); 我得到一个错误: [语法错误]第0行,第741列:错误:应为“.”或“(”,获得计数 这只发生在别名为column的情况下。如何避免此错误? 谢谢。试试这样: $qb->selec

使用QueryBuilder对象时,在
内部使用
like
并具有以下内容:

$queuebuilder->addSelect('c.customercount*5 as count');
$queuebuilder->add('having', 'count like \'sometext\''); 
我得到一个错误:

[语法错误]第0行,第741列:错误:应为“.”或“(”,获得计数

这只发生在别名为column的情况下。如何避免此错误?
谢谢。

试试这样:

$qb->select('count(c.customer) as count');
$qb->having('count > x');
$qb->select('count(c.customer) as count');
$qb->where('c.username = :username');
$qb->having('count > ?1');
$qb->setParameter('username', "foo");
$qb->setParameter(1, 3); //havin count > 3
如果要包含where语句,可以执行以下操作:

$qb->select('count(c.customer) as count');
$qb->having('count > x');
$qb->select('count(c.customer) as count');
$qb->where('c.username = :username');
$qb->having('count > ?1');
$qb->setParameter('username', "foo");
$qb->setParameter(1, 3); //havin count > 3

首先,你需要学习如何正确编写问题,因为你没有格式化代码,而且代码看起来不完整。你能提供应用程序中的代码吗?谢谢,我使用datatables.js插件,我需要这样的代码:[code]$qb->select('count(c.customer)as count');[code]$qb->have('count like\'%param%\');但是like关键字不起作用我不知道我应该如何解释我的问题,让你知道我不需要更高,也不需要更少,而是使用like关键字进行搜索。拜托,伙计,别生气。这里发生的事情是,你的查询毫无意义。如果你只想使用like条件,你可以做:->在哪里(“类似列:param”)