这可以与代数的加减乘除类比。
能灵活运用,解决实际问题,把加减乘除的类比到关系代数,并能结合关系代数本身的特性,在没有看到先例的情况下解决遇到的新问题,这就实现了在思想和方法上举一反三,就达到了李开复所说的,把大学学到的知识全部忘掉,剩下来的部分。
技巧:
1、常用技巧:表连接,将表扩充,将元组的属性扩展;然后进行元组的筛选;最后进行投影。
2、“检索至少选修C2和C4的学生学号” :这需要SC X SC,自身进行笛卡尔积,将表扩充,然后进行筛选。
3、“检索不学C2课程的学生姓名和年龄”:先求出全部学生的姓名和年龄,然后求出学了C2课程的,最后两者相减。
这里的解法,就需要用之前用过的等价思想进行转换,即使书本中没有提到,也应该要将旧思想灵活运用到这个新场景,这是举一反三的一个表现,也是解决问题能力的体现。
4、“检索学习全部课程的学生姓名”:
- a、算出学生的选课情况
- b、全部课程
- c、学了全部课程的学号
- d、选出姓名
这里知道“学习了全部课程”这个抽象之后,再解这个问题,就会比没有这个抽象简单一个层次。(抽象化简问题),
在处理问题的时候,需要学会站在某一个抽象的层次上,这样才可能接着往更高的层次走,而不能什么都从最基层的开始,这样的复杂度太高,难以发展。
这有点像简答一个初中的数学应用题,在一个主线下,第一步干什么,第二步干什么,先串起来,最后加上一些枝节将问题完善。(分步,主要问题)