连接表达式
连接条件
select *from student join takes on student.ID = takes.ID;
//连接条件为on后面的表达式
外连接条件
select *from student natural left outer join takes;
左外连接(leftouter join )只保留出现在左外连接运算左边的关系元组中
右外连接(right outer join )只保留出现在右外连接运算之后的关系元组中
全外连接(fullouter join )保留出现在两个关系中的元组
例:select *from (select *from student where dept_name ='Comp.Sci') natural full outer join (select*from takes where semester = 'Spring' and year = 2009);
约束表达式
check 子句
createtable section
(
course_idvarchar(8),
sec_idvarchar(8),
semestervarchar(8),
yearnumeric(4,0),
buildingvarchar(7),
time_slot_idvarchar(4),
primarykey(course|_id,sec_id,semester,year),
check(semesterin('fall','winter','Spring','Summer'))
)
check子句来保证属性值满足指定的条件,实际上创建一个强大的类型系统
权限管理
grant<权限列表> on <关系名/视图名> to <用户/角色列表>
例:grantselect on department to Admin;
//授权
revoke<> on < > from <> ;
例:revoke select on department from Admin;