如何从createQueryBuilder获取sql?

2024-01-10

你知道我如何从 createQueryBuilder 获取 sql 吗?

我的 Entity/DownloadRepository.php 类:

 public function getLastDownload($limit)
    {
        $query = $this->createQueryBuilder('d');

        $query->select('l.ytId, d.title, d.date, d.id, l.creator')
            ->from('DimiYvmBundle:Log', 'l')
            ->where('d.ytId = l.ytId AND l.creator = :creator')
            ->orderBy('l.id', 'DESC')
            ->groupBy('l.ytId')
            ->setParameter('creator', 'n')
            ->setMaxResults($limit);

        // echo $query->getSQL(); => Doesn't work... 

        return $query->getQuery()->getResult();
    }

感谢大家的帮助。 此致

EDIT

要获取 sql,您必须执行以下操作:

echo $query->getQuery()->getSql();

谢谢大家!


你可以从$query->getQuery()->getSQL()请记住,对于它将产生的参数?而不是值。
如果您想获取包含参数和值的完整 SQL 查询,请检查浏览器页面 DEV 模式下的探查器工具栏。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从createQueryBuilder获取sql? 的相关文章

随机推荐