Fur*_*ury -1 cakephp cakephp-1.3
此功能正在处理OR条件.我需要这个来处理AND条件.任何帮助:
$ands = array();
foreach ($array_training_id as $id) {
$ands[] = array('TrainingsUser.training_id' => $id);
}
$conditions = array('AND' => $ands);
$users = $this->TrainingsUser->find('all', array('conditions' => $conditions));
Run Code Online (Sandbox Code Playgroud)
我想写一个查询AND条件,如下所示:
SELECT user_id FROM trainings_users WHERE training_id = 172 AND training_id = 174
Run Code Online (Sandbox Code Playgroud)
获取第一个ID时,此查询正在运行.
表说明:我有3个表Training - User - Training_users ... training_users表有traing_id和user_id我想要的东西是这样的东西: SELECT user_id FROM Training_users WHERE training_id = 172 AND training_id = 174...它甚至在SqlMyadmin中也不起作用

当我给training_id 172和training_id 174时我需要的是它必须仅返回用户150
为什么你的$ array_project_id首先是一个字符串(除了命名冲突^^)?它应该是一个id和蛋糕阵列将自动能够开箱即用.
好吧,无论如何:
$ids = explode(',', $array_project_id);
// now its a clean array
$users = $this->Training->find('all', array('conditions' =>
array('Training.Project_id' => $ids)
));
Run Code Online (Sandbox Code Playgroud)
在您的评论之后,我仍然没有看到使用AND的价值.但到底是什么,你走了:
$ands = array();
foreach ($ids as $id) {
$ands[] = array('Training.Project_id' => $id);
}
$conditions = array('AND' => $ands);
$users = $this->Training->find('all', array('conditions' => $conditions));
Run Code Online (Sandbox Code Playgroud)
瞧.但它仍然无法运作.
您似乎正在使用一些HABTM关系(您应该在开始时提供这一重要信息!).然后你需要查询中间模型/关系,以便在这里有两个belongsTo-relations(=左连接).
您真正需要的是什么(再次:您为什么只发布相关关系以及有关Training_users的信息?)是查询中间表"Training_users",其中包含belongsTo方向(左连接到用户).而最重要的事实是:使用OR而不是AND.这将获得您想要的结果.
| 归档时间: |
|
| 查看次数: |
441 次 |
| 最近记录: |