sql 连表查询问题表student 有id,name,sc_id 3个字段
表course 有bookid,bookname 2i个字段sc_id 和 bookid 是外键关系我想查询 name 和 对应的name所有的bookname个数
意思就是 想查询某个学生所选择的所有课程的数量
打印结果是 一个学生名字 学生选择的课程数量
表course 有bookid,bookname 2i个字段sc_id 和 bookid 是外键关系我想查询 name 和 对应的name所有的bookname个数
意思就是 想查询某个学生所选择的所有课程的数量
打印结果是 一个学生名字 学生选择的课程数量
course(bookid,bookname) ;
stdcur(sc_id ,id, bookid) ;
mysql> select * from student;
+------+------+-------+
| id | name | sc_id |
+------+------+-------+
| 1 | aa | 0 |
| 2 | bb | 0 |
+------+------+-------+
mysql> select * from stdcur;
+-------+------+--------+
| sc_id | id | bookid |
+-------+------+--------+
| 1 | 1 | 1 |
| 2 | 1 | 2 |
| 3 | 1 | 4 |
| 2 | 2 | 2 |
+-------+------+--------+
4 rows in set (0.00 sec)select s.name , count(bookid) from stdcur sc , student s where
s.id = sc.id
group by s.name ;
mysql> select s.name , count(bookid) from stdcur sc , student s where
-> s.id = sc.id
-> group by s.name ;
+------+---------------+
| name | count(bookid) |
+------+---------------+
| aa | 3 |
| bb | 1 |
+------+---------------+
2 rows in set (0.00 sec)是不是这样子的结果啊
id name sc_id
1 zs 1
2 ls 2
3 ww 1course
bookid bookname
1 math
2 english