我正在尝试编写符合以下条件的学说查询:
published = 1
AND
subsection = "gui" OR "lvo" OR "tnn" OR "wer"
这就是我所拥有的:
$getPrograms = Doctrine::getTable('Program')
->createQuery()
->where('published=?', '1')
->andWhere('subsection=?', 'gui')
->orWhere('subsection=?', 'lvo')
->orWhere('subsection=?', 'tnn')
->orWhere('subsection=?', 'wer')
->orderBy('title ASC')
->execute();
这是拉动正确的分段记录,但是将所有已发布记录拉出记录,而不是仅记录为1。
我觉得我需要隔离这两个条件(这个AND(这个OR或者这个))但是我不知道如何。
答案 0 :(得分:4)
将OR
放入andWhere
:
$getPrograms = Doctrine::getTable('Program')
->createQuery()
->where('published=?', '1')
->andWhere(
'subsection=? OR subsection=? OR subsection=? OR subsection=?',
array('gui', 'lvo', 'tnn', 'wer')
)
->orderBy('title ASC')
->execute();