Marco de litio Cómo hacer una consulta con o
Pregunta
Empiezo a trabajar con Lithium PHP Framework.Tengo que hacer una consulta para obtener preguntas, que tienen '% de exámenes' o '% Easy%' en el campo 'Título'. He intentado hacerlo usando el código de seguimiento:
$questions = Questions::find('all', array(
'conditions' => array(
'name' => array(
'like' => array(
'%easy%',
'%test%'
)
)
)
));
pero haz esta consulta:
SELECT * FROM `questions` AS `Questions` WHERE (`name` LIKE '%easy%' AND `name` LIKE '%test%')
¿Cómo reemplazar y con o?
gracias
Solución
como una solución a su pregunta que puede usar en (=) en lugar de como
'conditions' => array(
'name' => array(
'=' => array(
'%easy%',
'%test%'
)
)
)
Esto generará la consulta:
WHERE ((`name` IN ('%easy%', '%test%')))
o se puede usar al buscar usando dos campos diferentes:
'conditions' => array(
'OR' => array(
'name' => array(
'=' => array(
'%easy%',
'%test%'
)
),
'name2' => array(
'!=' => array(
'%easy%',
'%test%'
)
)
)
),
y esto generará consulta:
WHERE ((`name` IN ('%easy%', '%test%')) OR (`name2` IN ('%easy%', '%test%')))
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow