質問と回答用の2つのテーブルを持つMySQLデータベースがあります。各質問には、正解と3つの不正解があります。すべての質問には常に4つの答えがあり、正しいのは1つだけです。
表は次のとおりです。
CREATE TABLE `question` (
`id_question` smallint(5) unsigned NOT NULL auto_increment,
`text` varchar(255) collate utf8_unicode_ci default NULL,
PRIMARY KEY (`id_question`),
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
CREATE TABLE `answer` (
`id_answer` mediumint(8) unsigned NOT NULL auto_increment,
`id_question` smallint(5) unsigned NOT NULL,
`is_correct` tinyint(1) NOT NULL,
`text` varchar(45) collate utf8_unicode_ci default NULL,
PRIMARY KEY (`id_answer`,`id_question`),
KEY `fk_id_question_idx` (`id_question`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
選択クエリについてサポートが必要です。行に質問があり、列に4つの回答があるテーブルを取得したいと思います(最初に正しいもの、次に他の3つ)。これまでのところ、次のような出力を取得できました。
Question | Answer | Is_Correct
-------------------------------
Question 1 Answer 1-1 1
Question 1 Answer 1-2 0
Question 1 Answer 1-3 0
Question 1 Answer 1-4 0
Question 2 Answer 2-1 1
Question 2 Answer 2-2 0
Question 2 Answer 2-3 0
Question 2 Answer 2-4 0
...
次の結果を得るにはどうすればよいですか?
Question | Correct_Answer | Incorrect_answer1 | Incorrect_answer2 | Incorrect_answer3
--------------------------------------------------------------
Question 1 Answer 1-1 Answer 1-2 Answer 1-3 Answer 1-4
Question 2 Answer 2-1 Answer 2-2 Answer 2-3 Answer 2-4