SQL允许在where子句中使用逻辑连词and,or和not,也可以使用between指定范围查询。逻辑连词的运算对象可以是包含比较运算符<,<=,>,>=,=和<>的表达式 例:找出工资在90000到100000教师的名字 select name from instructor where salary > 90000 and salary > 100000; 或 select name from instructor where salaty between 90000 and 100000; from子句 from子句是一个查询求值中需要访问的关系列表,通过from子句定义了一个在该子句中所列出关系上的笛卡尔积。 找出instructor和teacher的笛卡尔积 select * from instructor,teacher; 更名运算 SQL提供可为关系和属性重新命名的机制,使用as子句,as语句可以出现在select子句中,也可以出现在from子句中 使用更名运算,对关系进行更名, 例:找出所有教师,以及他们所讲授课程的标识 select T.name, S.course_id from instructor as T, teachers as S where T.ID = S.ID 例:找出所有教师名,他们的工资至少比 biology系某一个教师的工资高 select distinct T.name from instructor as T, instructor as S where T.salary > S.salary and S.dept_name = ‘biology‘; 字符串运算 对字符串进行的最常见的操作就是使用操作符like的模式匹配,使用两个特殊的字符来描述模式: 百分号(%):匹配任意的子串 下划线(_):匹配任意一个字符 例:找出所有建筑名称中包含子串‘ryan‘的所有系名 select dept_name from department where building like ‘%ryan%‘;
数据库-第四章 SQL语句查询
标签: