0
表は次のように定義されています。別の表から最初の表への項目の配列の結合
survey_question_answers
id | surveyId | questionId | title | description | creationDate
survey_questions
id | surveyId | title | description | creationDate
私は
問題があるSELECT `SurveyQuestion`.*, `Answer`.* FROM `uaehub`.`survey_questions` AS `SurveyQuestion` LEFT JOIN `uaehub`.`survey_question_answers` AS `Answer` ON (`SurveyQuestion`.`id` = `Answer`.`questionId`) WHERE `SurveyQuestion`.`id` = 1 GROUP BY SurveyQuestion.id
、それが唯一の代わりにすべての答えの1件の回答をフェッチしているmysqlのクエリを使用しています。私は私のsurveyQuestion私は、CakePHPでこれを行うにしようとしています
をに接続されているすべての答えを取得するためにクエリを変更するにはどうすればよい
$questions = $this->SurveyQuestion->find('all', array(
'conditions' => array('SurveyQuestion.id' => $survey['id']),
'fields' => array(
'SurveyQuestion.*',
'Answer.*'
),
'joins' => array(
array(
'type' => 'LEFT',
'table' => 'survey_question_answers',
'alias' => 'Answer',
'conditions' => array('SurveyQuestion.id = Answer.questionId')
),
),
'group' => array(
'SurveyQuestion'
),
));
これは私が、 このような
{
"SurveyQuestion": {
"id": "1",
"surveyId": "1",
"title": "Did you exercised early in the morning?",
"description": "If Yes, please choose Yes. If no please choose NO",
"creationDate": "2016-12-02 09:39:18"
},
"Answer": [{
"id": "1",
"surveyId": "1",
"questionId": "1",
"answer": "Yes",
"creationDate": "2016-12-02 09:39:44"
},
{
"id": "2",
"surveyId": "1",
"questionId": "1",
"answer": "NO",
"creationDate": "2016-12-02 09:39:44"
}]
}
何かをしたいものです質問に添付された回答の配列を持っています
私はatmを取得しています
{
"SurveyQuestion": {
"id": "1",
"surveyId": "1",
"title": "Did you exercised early in the morning?",
"description": "If Yes, please choose Yes. If no please choose NO",
"creationDate": "2016-12-02 09:39:18"
},
"Answer": {
"id": "1",
"surveyId": "1",
"questionId": "1",
"answer": "Yes",
"creationDate": "2016-12-02 09:39:44"
}
}
注、これは、CakePHPのフォーマット
質問を添付して複数の行が表示される場合は、多数の質問がありますが、各質問には回答が数多く含まれていることを覚えておいてください。 –
あなたは何を得て、あなたは欲しい。 – Seb
すべての行には質問と回答があります(両方のテーブルを結合します)。 – Seb