1.use skb;
2.select 学号,姓名,课程号,课程名
-> from xsqk,kc;
3. select *from xsqk;
4. select *from kc;
5. select 17*13;
6. select xsqk.学号,姓名,课程号,成绩
-> from xsqk,cj
-> where xsqk.学号=cj.学号 and 成绩<60;
7.select xsqk .学号,姓名,课程号,成绩
-> from xsqk,cj
-> where xsqk.学号=cj.学号 and 成绩<60;#用链接字段 . 指明引用的表,避免出错和冗余。
+------------+--------+--------+------+
8. select xsqk.学号,姓名,课程号,成绩
-> from xsqk inner join cj
-> on xsqk.学号=cj.学号
-> where 成绩<60;
9. 自连接和不等值链接
select A.学号,A.课程号,A.成绩,B.课程号,B.成绩 #
-> from cj A,cj B
-> where A.学号=B.学号 and A.课程号<B.课程号;#要实现在一行(人)上显示出两组课程号和成绩时,
需要有自连接(SELECT CHAR FROM TABLE1 [INNER] JOIN TABLE2 ON CONDITION)和
不等值连接。
10.内连接语法;
select A.学号,A.课程号,A.成绩,B.课程号,B.成绩
-> from cj A inner join cj B #此处是利用别名,将 课程名as A/B
-> ON A.学号=B.学号 and A.课程号<B.课程号;
11.左外连接:
SELECT XSQK.学号,姓名,课程号,成绩
-> from xsqk left join cj
-> on xsqk.学号=cj.学号;
12.右外连接:
select KC.课程号 开设课程,课程名,学号,cj.课程号 已选修,成绩
-> from cj right join kc
-> on cj.课程号=kc.课程号;
13. select xsqk.学号,姓名,kc.课程号,授课教师,成绩
-> from xsqk,cj,kc
-> where xsqk.学号=cj.学号 and kc.课程号=cj.课程号 and 成绩<60;
14. select xsqk.学号,姓名,kc.课程号,授课教师,成绩
-> from xsqk inner join cj on xsqk.学号=cj.学号
-> inner join kc on kc.课程号=cj.课程号
-> where 成绩<60;