我希望创建一个简单的查询,但是我似乎无法弄清楚如何使用Cakes条件(cake 1.3)来进行查询,我想做的事情很简单,在SQL中只是
SELECT * FROM table WHERE firstvalue != '' OR secondvalue != ''
因此,基本上只有在firstvalue或second值中都有一个值时才返回row。
此刻我有
$conditions = array(
"NOT" => array(
'firstvalue' => ''
)
);
这对于第一个值很好用,但是如果我尝试对其添加任何内容,它仍然仅返回第一个值的结果
答案 0 :(得分:1)
两种解决方法:
$conditions = array(
'OR' => array(
array('NOT' => array('firstvalue' => '')),
array('NOT' => array('secondvalue' => ''))
)
);
或者,利用“ NOT a OR NOT b” ==“ NOT(a AND b)”这一事实:
$conditions = array(
'NOT' => array(
array('firstvalue' => ''),
array('secondvalue' => '')
)
);
答案 1 :(得分:0)
要在OR条件下添加多个字段,必须将这些字段写入数组。
就像
$conditions = array(
"OR" => array(
"NOT"=>array('firstvalue' => ''),
array('secondvalue'='')
)
)
);
我希望它对您有用。