具有多个参数值的Mysql querybuilder
我尝试从setParameters获取多个值,但使用相同的“键”,例如:具有多个参数值的Mysql querybuilder,sql,symfony,query-builder,Sql,Symfony,Query Builder,我尝试从setParameters获取多个值,但使用相同的“键”,例如: ->where('d.type = :type')->setParameters(array('type'=> 7, 'type => '8')) 但是我只得到了“8”的结果,而不是7+8。如下更改您的where条件 ->where('d.type IN (:types)') ->setParameter('types', array(7, 8)) 或 在第一个示例中,如果array
->where('d.type = :type')->setParameters(array('type'=> 7, 'type => '8'))
但是我只得到了“8”的结果,而不是7+8。如下更改您的
where
条件
->where('d.type IN (:types)')
->setParameter('types', array(7, 8))
或
在第一个示例中,如果array(7,8)
是一个参数变量(传递给函数)且为空,则不会引发错误
第二,如果
数组(7,8)
是一个参数变量(传递给函数)且为空,则会引发一个错误(因此,在运行查询之前,您应该仔细检查。更改where
条件,如下所示
->where('d.type IN (:types)')
->setParameter('types', array(7, 8))
或
在第一个示例中,如果array(7,8)
是一个参数变量(传递给函数)且为空,则不会引发错误
第二,如果
array(7,8)
是一个参数变量(传递给函数)且为空,则会引发一个错误(因此在运行查询之前,您应该仔细检查。键必须是唯一的,因此我无法从type中获取多个值?使用其他方法?是否希望从表中获取asSelect*,其中d.键入(7,8)
?这不是一个Symfony问题,而是一个SQL问题。您必须在MySQL的子句中使用。谢谢,我已经更新了我的标题,这确实是'IN':)键必须是唯一的,所以我无法从type中获取多个值?使用其他方法?是否希望从表中获取asSelect*作为d,其中d.键入(7,8)
?这不是一个Symfony问题,而是一个SQL问题。您必须在MySQL的子句中使用。谢谢,我已经更新了我的标题,这确实是“IN”: