gpt4 book ai didi

zend-framework - 我如何在教义 where 子句中写不等于?

转载 作者:行者123 更新时间:2023-12-04 04:30:43 25 4
gpt4 key购买 nike

我希望有人可以帮助我,我正在我的存储库中编写一个自定义查询,我想执行以下操作:-

$query = $this->_em->createQueryBuilder()
->select('a')
->from('entity', 'a')
->where('a.deleted not 1') /// how do you write NOT??? i've tried <> etc
->getQuery();

我如何执行上述操作?

谢谢

安德鲁

最佳答案

弗朗西斯科的回答是正确的。这完全取决于您使用表达式构建器或高级解决方案的意愿。

对于您的特定情况,您可以选择两者之一。

表达式生成器:

$queryBuilder = $this->_em->createQueryBuilder();
$expr = $queryBuilder->expr();

$query = $queryBuilder
->select('a')
->from('entity', 'a')
->where($expr->neq('a.deleted', 1))
->getQuery();

有关高级解决方案,请参阅 Rawkode 的回答。除了将 != 更改为 <> 或使用 a.deleted = 0

更好的是用 Doctrine 参数化这个
->where('a.deleted = :deleted')
->setParameter('deleted', false);

关于zend-framework - 我如何在教义 where 子句中写不等于?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10537793/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com