我有以下表格:
Question (id, question)
Answer (id, answer, qId, sess)
Answer.qId = Question.id
,我想要的查询输出(基于下面的数据)将是:
+----+-----+------+
|sess|Color|Shape |
+----+-----+------+
|ses1|green|square|
|ses2|black|square|
|ses3|black|circle|
+----+-----+------+
' sess' (意思是会话)为Answer.sess
,其他列应从Question.question
表生成。
我不知道'问题'的行数/行数。表,这些可能会改变。所以我无法对查询进行硬编码。我相信这可以使用预先准备的语句来完成。我已经看到一些准备好的陈述作为类似问题的stackflow的答案,但是要么是一个表,要么值是问题表的一部分,无论哪种方式我似乎都无法解决它!
示例模式/数据:
CREATE TABLE answer
(`id` int, `answer` varchar(16), `qId` int, `sess` varchar(15));
INSERT INTO answer
(`id`, `answer`, `qId`, `sess`)
VALUES
(1, 'green', 1, 'ses1'),
(2, 'square', 2, 'ses1'),
(3, 'black', 1, 'ses2'),
(4, 'square', 2, 'ses2'),
(5, 'black', 1, 'ses3'),
(6, 'circle', 2, 'ses3');
CREATE TABLE question
(`id` int, `question` varchar(10));
INSERT INTO question
(`id`, `question`)
VALUES
(1, 'Color'),
(2, 'Shape');