如下4个表进行跨表查询要求写出SQL查询语句,达到如下效果:
问题ID 问题分类中文名 问题内容 对应的回答类列 对应的评论列表例如
问题1 分类1 问题1的内容 问题1的 回答1
问题1 的回答1的评论1
问题1 的回答1的评论2
问题1 的回答1的评论3
……
问题1的 回答2
问题1 的回答2的评论1
问题1 的回答2的评论2
……
问题2 分类2 问题2的内容 问题2的回答1
问题2的回答1的评论1
问题2 的回答1的评论2
……
问题2的 回答2
问题2的回答2的评论1
问题2的 回答2的评论2
……
……
(格式可能做不到,主要是内容能逐一分别列出来)
求助, 感谢!!!数据库如下:
MYSQL数据库-- 表的结构 `answer`CREATE TABLE `answer` (
`id` int(10) unsigned NOT NULL auto_increment,
`qid` int(10) unsigned NOT NULL default '0',
`content` mediumtext NOT NULL,
PRIMARY KEY (`id`),
KEY `qid` (`qid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=44 ;INSERT INTO `answer` (`id`, `qid`, `content`) VALUES
(1, 1, '问题1的回答1'),
(2, 1, '问题1的回答2'),
(3, 2, '问题2的回答1'),
(4, 1, '问题1的回答3'),
(5, 2, '问题2的回答2');CREATE TABLE `comment` (
`id` int(10) NOT NULL auto_increment,
`aid` int(10) NOT NULL,
`content` varchar(100) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=121 ;INSERT INTO `comment` (`id`, `aid`, `content`) VALUES
(1, 2, '问题1回答2的评论1'),
(2, 2, '问题1的回答2的评论2'),
(3, 1, '问题1的回答1的评论1'),
(4, 2, '问题1的回答2的评论3');
CREATE TABLE `fl` (
`id` smallint(5) unsigned NOT NULL auto_increment,
`name` char(30) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=20 ;INSERT INTO `fl` (`id`, `name`) VALUES
(1, '分类1'),
(2, '分类2');CREATE TABLE `question` (
`id` int(10) unsigned NOT NULL auto_increment,
`cid` smallint(5) unsigned NOT NULL default '0',
`title` char(50) NOT NULL,
`cotent` text NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=82 ;INSERT INTO `question` (`id`, `cid`, `title`, `cotent`) VALUES
(1, 1, '问题1', '问题1的内容'),
(2, 2, ' 问题2', '问题2的内容');
问题ID 问题分类中文名 问题内容 对应的回答类列 对应的评论列表例如
问题1 分类1 问题1的内容 问题1的 回答1
问题1 的回答1的评论1
问题1 的回答1的评论2
问题1 的回答1的评论3
……
问题1的 回答2
问题1 的回答2的评论1
问题1 的回答2的评论2
……
问题2 分类2 问题2的内容 问题2的回答1
问题2的回答1的评论1
问题2 的回答1的评论2
……
问题2的 回答2
问题2的回答2的评论1
问题2的 回答2的评论2
……
……
(格式可能做不到,主要是内容能逐一分别列出来)
求助, 感谢!!!数据库如下:
MYSQL数据库-- 表的结构 `answer`CREATE TABLE `answer` (
`id` int(10) unsigned NOT NULL auto_increment,
`qid` int(10) unsigned NOT NULL default '0',
`content` mediumtext NOT NULL,
PRIMARY KEY (`id`),
KEY `qid` (`qid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=44 ;INSERT INTO `answer` (`id`, `qid`, `content`) VALUES
(1, 1, '问题1的回答1'),
(2, 1, '问题1的回答2'),
(3, 2, '问题2的回答1'),
(4, 1, '问题1的回答3'),
(5, 2, '问题2的回答2');CREATE TABLE `comment` (
`id` int(10) NOT NULL auto_increment,
`aid` int(10) NOT NULL,
`content` varchar(100) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=121 ;INSERT INTO `comment` (`id`, `aid`, `content`) VALUES
(1, 2, '问题1回答2的评论1'),
(2, 2, '问题1的回答2的评论2'),
(3, 1, '问题1的回答1的评论1'),
(4, 2, '问题1的回答2的评论3');
CREATE TABLE `fl` (
`id` smallint(5) unsigned NOT NULL auto_increment,
`name` char(30) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=20 ;INSERT INTO `fl` (`id`, `name`) VALUES
(1, '分类1'),
(2, '分类2');CREATE TABLE `question` (
`id` int(10) unsigned NOT NULL auto_increment,
`cid` smallint(5) unsigned NOT NULL default '0',
`title` char(50) NOT NULL,
`cotent` text NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=82 ;INSERT INTO `question` (`id`, `cid`, `title`, `cotent`) VALUES
(1, 1, '问题1', '问题1的内容'),
(2, 2, ' 问题2', '问题2的内容');
解决方案 »
- mysql赋值操作符问题
- 怎样同时在两个表里插入数据
- mysql 中文索引插件,在window2003的系统
- 有什么方法 可以让root能够使用??
- 删错表 能马上还原数据吗............
- ERROR 1366 (HY000) mysql Incorrect string value: '\xC2\xED' for column 'mycolumn' at row 1
- Mysql所在目录中出现mail-bin.***文件
- 无法启动mysql,错误1067,怎么办?
- PhpMyAdmin的存储过程执行时运行结果只显示一条是什么原因?
- FEDERATED引擎支持索引吗
- phpmyadmin 进入出错
- mysql的and or的SQL优化
+----+-----+--------------+
| id | qid | content |
+----+-----+--------------+
| 1 | 1 | 问题1的回答1 |
| 2 | 1 | 问题1的回答2 |
| 3 | 2 | 问题2的回答1 |
| 4 | 1 | 问题1的回答3 |
| 5 | 2 | 问题2的回答2 |
+----+-----+--------------+
5 rows in set (0.00 sec)mysql> select * from comment;
+----+-----+---------------------+
| id | aid | content |
+----+-----+---------------------+
| 1 | 2 | 问题1回答2的评论1 |
| 2 | 2 | 问题1的回答2的评论2 |
| 3 | 1 | 问题1的回答1的评论1 |
| 4 | 2 | 问题1的回答2的评论3 |
+----+-----+---------------------+
4 rows in set (0.00 sec)mysql> select * from fl;
+----+-------+
| id | name |
+----+-------+
| 1 | 分类1 |
| 2 | 分类2 |
+----+-------+
2 rows in set (0.00 sec)mysql> select * from question;
+----+-----+--------+-------------+
| id | cid | title | cotent |
+----+-----+--------+-------------+
| 1 | 1 | 问题1 | 问题1的内容 |
| 2 | 2 | 问题2 | 问题2的内容 |
+----+-----+--------+-------------+
2 rows in set (0.00 sec)mysql>