如何在 dictionary2 查询生成器 where 语句中添加运算符

How to add operators in doctrine2 query builder where statement(如何在 dictionary2 查询生成器 where 语句中添加运算符)
本文介绍了如何在 dictionary2 查询生成器 where 语句中添加运算符的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图从所选持续时间除以条目持续时间等于没有余数的表中进行选择.

Im trying to select from a table where the selected duration divided by the entry duration equals has no remainder.

$qb = $em->createQueryBuilder()
->from('AcmeBlogBundle:Entry', 'e')
->andWhere(":duration % e.duration = 0")
->setParameter('duration', $duration);

这会返回错误:

[Syntax Error] line 0, col 226: Error: Expected =, <, <=, <>, >, >=, !=, got '%' 

这可以在纯 SQL 中工作.有人知道如何使用 Doctrine 的查询生成器来做到这一点吗?

This would work in plain SQL. Does anybody know how to do this with Doctrine's query builder?

推荐答案

符号 % 不是 DQL 运算符.试试这个:

The symbol % is not a DQL operator. Try this:

$qb = $em->createQueryBuilder()
->from('AcmeBlogBundle:Entry', 'e')
->andWhere("mod(:duration,e.duration) = 0")
->setParameter('duration', $duration);

或阅读:http://docs.doctrine-project.org/projects/doctrine-orm/en/2.0.x/reference/dql-doctrine-query-language.html12.5.1 段.

Or read this: http://docs.doctrine-project.org/projects/doctrine-orm/en/2.0.x/reference/dql-doctrine-query-language.html The 12.5.1 paragraph.

MOD(a, b) - Return a MOD b.

这篇关于如何在 dictionary2 查询生成器 where 语句中添加运算符的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Convert JSON integers and floats to strings(将JSON整数和浮点数转换为字符串)
in php how do I use preg replace to turn a url into a tinyurl(在php中,如何使用preg替换将URL转换为TinyURL)
all day appointment for ics calendar file wont work(ICS日历文件的全天约会不起作用)
trim function is giving unexpected values php(Trim函数提供了意外的值php)
Basic PDO connection to MySQL(到MySQL的基本PDO连接)
PHP number_format returns 1.00(Php number_Format返回1.00)