当前位置:Gxlcms > 数据库问题 > 数据库-第四章 SQL语句查询

数据库-第四章 SQL语句查询

时间:2021-07-01 10:21:17 帮助过:67人阅读

                集合运算                 空值                 聚集函数                 嵌套子查询                 数据库的修改 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   SQL查询的基本机构   SQL查询的基本机构由三个子句构成:select,from,where     select A1,A2,A3     fron r1,r2,r3     where P  技术分享    select子句    注意:SQL不允许在属性名称中,使用字符‘-‘,使用dept_name代替dept-name        SQL不区分字母的大小写,因此可以使用大写字母、小写字母命令表,属性等。    SQL允许在关系以及SQL表达式结果中出现重复的元祖     若要强行去除重复,可在select后加入关键词distinct     例:查询instructor关系中的所有系名,并去除重复         select distinct dept_name         fron instructor;     SQL也可以使用关键词all来显式指明不去除重复(SQL默认就是all)         select all dept_name         from instructor;     星号*在select子句中,可以用来表示“所有的属性”         select *         from instructor;     select子句中还可带含有+、-、/运算符的算术表达式,运算对象可以是常数或元组的属性。         select ID,name,salary*1.05         from instructor;  where子句     where子句允许我们只选出那些在from子句的结果关系中满足特定谓词的元祖。         例:找出在Computer Science系并且工资超过7万美元教师的姓名     select name     from instructor     where dept_name = ‘Com.science‘and salary > 70000;     上述SQL查询语句,对应的关系代数表达式为:     技术分享
        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语句查询

标签: