条件或加入 cakephp
conditions OR in join cakephp
我是蛋糕新手,我在处理要在表中执行的查询时遇到问题。
$options['joins'] = array(
array('table'=>'users_views',
'alias' => 'UserView',
'type' => 'inner',
'conditions' => array(
'View.id = UserView.view_id',
'UserView.user_id' => $user_id,
'UserView.like' => 1
),
)
);
$options['order'] = array('View.created' => 'desc');
$options['limit'] = 10;
到目前为止这是我的查询,但我现在需要添加一个 OR 条件。在这种情况下或需要添加
'UserView.user_id' => $user_id,
'UserView.like' => 0
我需要查询returns匹配的数据或者是我的数据,LIKE值为0如果很难理解请告诉我。
任何帮助或建议都会受到欢迎。
构建 conditions
喜欢 -
'conditions' => array(
0 => array('View.id = UserView.view_id'),
1 => array('UserView.user_id' => $user_id),
3 => 'UserView.like => 1 OR UserView.like => 0'
),
或使用 OR
-
'conditions' => array(
0 => array('View.id = UserView.view_id'),
1 => array('UserView.user_id' => $user_id),
2 => 'UserView.like IN (0, 1)'
),
以下应该有效:
$options['joins'] = array(
array('table'=>'users_views',
'alias' => 'UserView',
'type' => 'inner',
'conditions' => array(
'View.id = UserView.view_id',
'OR' => array(
'UserView.user_id' => $user_id,
'UserView.like' => 1
)
),
)
);
$options['order'] = array('View.created' => 'desc');
$options['limit'] = 10;
我是蛋糕新手,我在处理要在表中执行的查询时遇到问题。
$options['joins'] = array(
array('table'=>'users_views',
'alias' => 'UserView',
'type' => 'inner',
'conditions' => array(
'View.id = UserView.view_id',
'UserView.user_id' => $user_id,
'UserView.like' => 1
),
)
);
$options['order'] = array('View.created' => 'desc');
$options['limit'] = 10;
到目前为止这是我的查询,但我现在需要添加一个 OR 条件。在这种情况下或需要添加
'UserView.user_id' => $user_id,
'UserView.like' => 0
我需要查询returns匹配的数据或者是我的数据,LIKE值为0如果很难理解请告诉我。 任何帮助或建议都会受到欢迎。
构建 conditions
喜欢 -
'conditions' => array(
0 => array('View.id = UserView.view_id'),
1 => array('UserView.user_id' => $user_id),
3 => 'UserView.like => 1 OR UserView.like => 0'
),
或使用 OR
-
'conditions' => array(
0 => array('View.id = UserView.view_id'),
1 => array('UserView.user_id' => $user_id),
2 => 'UserView.like IN (0, 1)'
),
以下应该有效:
$options['joins'] = array(
array('table'=>'users_views',
'alias' => 'UserView',
'type' => 'inner',
'conditions' => array(
'View.id = UserView.view_id',
'OR' => array(
'UserView.user_id' => $user_id,
'UserView.like' => 1
)
),
)
);
$options['order'] = array('View.created' => 'desc');
$options['limit'] = 10;