我想检查数据库中是否存在记录。它唯一需要返回的是真或假。我现在使用以下查询来获取记录。另一个命令是getResult()来检查记录是否存在吗?
return $this->createQueryBuilder('u')
->andWhere('u.email = :email AND u.id != :id')
->setParameter('email', $email)
->setParameter('id', $userId)
->getQuery()
->getResult();
答案 0 :(得分:4)
return (boolean)$this->createQueryBuilder('u')
->andWhere('u.email = :email AND u.id != :id')
->setParameter('email', $email)
->setParameter('id', $userId)
->getQuery()
->getOneOrNullResult();
请注意,如果可能(例如,电子邮件列上没有唯一索引)查询返回多个结果,那么您还需要使用try / catch块包装调用,因为如果更多,它可能会抛出异常找到了一个结果。