资源描述:
《关系数据库标准语言sql1》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第5章关系数据库标准语言SQLSQL全称是结构化查询语言(StructuredQueryLanguage),它是国际标准数据库语言,如今无论是VisualFoxpro、Access这样的微机上常用的小型数据库管理系统,还是Oracle、Sybase、Informix、SQLServer这样的大型数据库管理系统,都支持SQL语言。SQL命令可以替代多条VisualFoxPro命令。5.1SQL语言概述结构化查询语言SQL是一种介于关系代数与关系演算之间的语言。它的主要特点如下:1.一体化语言2.高度非过程化语言3.语言简洁,易学易用
2、4.统一的语法结构5.视图数据结构6.VisualFoxPro中的SQL5.2SQL的数据查询功能数据查询是对数据库中的数据按指定条件和顺序进行检索输出。5.2.1SELECT语句格式Select语句的基本格式为:select<字段名表>from<表名>[where<条件表达式>]5.2.2投影查询投影查询是指从表中查询全部列或部分列。1.查询全部字段【例5-1】查询职工信息表中全部信息。SELECT*FROM职工信息表等价于下面的查询语句:SELECT职工号,姓名,性别,年龄,婚否,职称,部门编号,出生日期FROM职工信息表说明
3、:星号“*”表示表中所有字段2.查询部分字段【例5-2】查询职工信息表中职工号,姓名和年龄。SELECT职工号,姓名,年龄FROM职工信息表3.取消重复记录在SELECT语句中,可以使用DISTINCT来取消查询结果中重复的记录。【例5-3】查询职工表中所有的部门编号。SELECTDISTINCT部门编号FROM职工信息表4.查询经过计算的表达式【例5-4】查询职工工资表中的职工号,基本工资,岗位工资,院龄工资,职务工资,税金和实发工资。SELECT职工号,基本工资,岗位工资,院龄工资,职务津贴,税金,;(基本工资+岗位工资+院龄
4、工资+职务津贴-税金)AS实发工资FROM职工工资表说明:AS用于修改查询结果中指定列的列名。AS也可以省略。5.2.3条件查询SELECT-SQL语句的查询方式很丰富,使用WHERE子句可以查询满足某些条件的记录。在WHERE子句中可以用关系运算符、逻辑运算符及特殊运算符构成较复杂的条件表达式。1.单条件查询【例5-5】查询职工信息表中已婚职工的信息。SELECT*FROM职工信息表WHERE婚否【例5-6】查询职工表中年龄大于等于30岁的职工的姓名,年龄和职称。SELECT姓名,年龄,职称FROM职工信息表WHERE年龄>=3
5、02.多重条件查询【例5-7】查询职工信息表中出生日期小于1970年副教授的姓名、年龄、职称和出生日期。SELECT姓名,年龄,职称,出生日期FROM职工信息表WHERE职称=”副教授”AND;YEAR(出生日期)<19703.特殊运算符查询在WHERE子句的查询中,常常会遇上查询条件为一些特殊的值或在某个特定的条件范围内,这可以使用特殊运算符解决。特殊运算符包括BETWEEN、IN、ISNULL和LIKE。(1)BETWEEN…AND运算符。在查找中,如果要求某列的数值在某个区间内,可使用该运算符。【例5-9】查询职工信息表中年
6、龄在30~40之间的职工姓名和年龄。SELECT姓名,年龄FROM职工信息表WHERE年龄BETWEEN30AND40(2)IN运算符。在查找中,经常会遇到要求表的列值是某几个值中的一个。此时,用IN运算符。【例5-10】查询职工信息表中“101”、“103”、“104”部门的职工号,姓名和部门编号。SELECT职工号,姓名,部门编号FROM职工信息表WHERE部门编号IN;(”101”,”103”,”104”)(3)LIKE运算符。在查找中,LIKE运算符专门对字符型数据进行字符串比较。LIKE运算符提供两种字符串匹配方式:一种
7、是使用下划线符号“_”表示任意一个字符,另一种是使用百分号“%”表示0个或多个字符的字符串。【例5-11】查询职工信息表中姓名包含“良”字的职工姓名。SELECT姓名FROM职工信息表WHERE姓名LIKE“%良%”【例5-12】查询职工信息表中姓名第三个字是“良”字的职工姓名。SELECT姓名FROM职工信息表WHERE姓名LIKE“__良”(4)ISNULL运算符。ISNULL运算符的功能是测试属性值是否为空值。在查询时应使用“列名IS[NOT]NULL”的形式,不能写成“列名=NULL”或“列名!=NULL”。【例5-13】
8、查询职工信息表中职称为空的职工姓名和职称。SELECT姓名,职称FROM职工信息表WHERE;职称ISNULL5.2.4统计及分组查询1.统计查询SQL不仅具有一般的检索数据的功能,而且还有计算检索的功能。SQL用于计算检索的函数有COUNT(计数