查询设计和SQL语言
数据库基础 及应用
4.2 用查询向导创建查询
4.2.1 简单查询向导
实例1(P82.)用简单查询向导查询产品表中的 产品名称、单价、库存量及订购量的信息。
实例1 用简单查询向导查询信息表中的姓名、 性别、民族及籍贯的信息。
数据库基础 及应用
4.2 用查询向导创建查询
4.2.2 交叉表查询向导
实例2(P86.)用交叉表查询向导查询出各运货 商向各城市供货的统计和明细信息。
数据库基础 及应用
4.3 用设计视图创建和修改查询
用设计视图创建查询(用于创建查询或对已建查询进行修改)
4.3.1
视 图 结 构 (
上 下 两 部 分
数据源显示窗口
)
查 询 设 计 网 格
数据库基础 及应用
4.3 用设计视图创建和修改查询
对查询结果排序
例 4.5 ( P94 ) 如 何选择字段 例 4.6 ( P96 ) 如 何排序(多字段排 序 例 4.7 (P97))
数据库基础 及应用
4.1.4 Access 查询视图
设计视图:设计视图就是查询设计器,通过该视 图可以设计除SQL查询之外的任何类型的查询。 数据表视图:数据表视图是查询的数据浏览器, 通过该视图可以查看查询运行结果,查询所检索 的记录。 SQL视图:SQL视图是按照SQL语法规范显示查 询,即显示查询的SQL语句,此视图主要用于 SQL查询。 数据透视表视图和数据透视图视图:在这两种视 图中,可以更改查询的版面,从而以不同方式分 析数据。
在Access的准则表达式中,使用的运算符包括算术运 算符、关系运算符、逻辑运算符和字符运算符四种。
数据库基础 及应用
4.3 用设计视图创建和修改查询
使用准则筛选记录
运算符 + \ 含义 加 减 整除 运算符 * / ^ 含义 乘 除 乘方
4.3.3
算术运算符
mod
求余 含义 大于
大于等于 小于
关系运算符
例:mid(“asdfg”,3,2)=“df”
返回字符串表达式中字符的个数.例:len(“asdf”)=4 去掉字符串表达式的前导空格. Ltrim(“ 张三“)=“张三” 去掉字符串表达式的尾部空格 去掉字符串表达式的前导空格和尾部空格
数据库基础 及应用
字段 院系 课程名称 民族
4.3 用设计视图创建和修改查询
条件 功能
出生日期 Between #1980-1-1# And #1980-12-31#
Year([出生日期])=1980 >= #1980-1-1# and <=#1980-12-31# 出生日期 Month([出生日期])=Month(Date()) 出生日期 year([出生日期])=1980 And Month([出生日期])=4 Between #1980-4-1# and #1980-4-30#
条件 "信息学院" Like " 计算机* " Left([课程名称], 3)= "计算机 " Not "汉" 功能 查询院系为信息学院的记录 查询课程名称以“计算机” 开头的记录 查询所有民族不是汉族的记 录
姓名
姓名 学号
In("海楠","王平") "海楠" or "王平"
Left([姓名],1)="王" Like "王* " Mid([学号],3,2)= " 11"
数据库基础 及应用
4.3 用设计视图创建和修改查询
Like “王*” 表示以“王”开始的字符串。 Like “[1-5]?” 表示查找的字符串中第一位是1~5 的数字,第二位是任意字符。 5)& 这个运算符将两个字符串进行连接。 表达式“How” &“ are you!”的结果是“How are you!”。
实例2 用交叉表查询向导查询出各民族各专业 的统计和明细信息。
数据库基础 及应用
4.2 用查询向导创建查询
4.2.3 查找重复项查询向导
实例3(P89.)从订单表中查找同一城市中有哪 些客户? 实例3 从信息表中查找同 一城市中有哪些同学?
数据库基础 及应用
4.2 用查询向导创建查询
4.2.4 查找不匹配项查询向导
总计功能分类: 1、分组(group by) 2、合计函数:sum()、avg()、 count()、min()、max()、 stdev()标准偏差、var()方差、
first()、last()
3、表达式 4、条件(where)
数据库基础 及应用
4.4 使用查询进行统计计算
例4.12 创建一个查询,显示每个订单的金额小计
数据库基础 及应用
4.1.3 Access 查询种类
选择查询:这种查询检索满足特定条件的数据。从一个或多个表中 获取数据并显示结果。 参数查询:在运行实际查询之前弹出对话框,提示用户输入查询准 则,系统将以该准则作为查询条件,将查询结果按指定的形式显示 出来。 交叉表查询(计算查询):通过查询操作完成基表内部或各基表之 间数据的计算。 操作查询:仅在一个操作中更改许多记录的一种查询。操作查询分 为四种类型:删除、更新、追加与生成表。 SQL查询:这种查询需要一些特定的SQL命令,这些命令必须写 在SQL视图中。
Month(日期表达式)
Year(日期表达式) Weekday(日期表达式,[w]) Hour(时间表达式) Minute(时间表达式)
返回日期中的月份
返回日期的的年份 返回日期中的星期 返回时间中小时值 返回时间中的分钟
Second(时间表达式)
返回时间中的秒
数据库基础 及应用
字段
4.3 用设计视图创建和修改查询
2
准则中使用的函数
函数 Abs(数值表达式) Int(数值表达式)
Sqr(数值表达式)
Sgn(数值表达式) Round(数值表达式,n)
数据库基础 及应用 函数
文本函数
功能
返回由n个空格组成的字符串.例:space(2)=“ “ 返回由第二个参数的第一个字符组成的字符串,字符个 数为n个.例: string(3,“asdf”)=“aaa” 从字符串表达式左侧第一个字符开始截取n个字符.例: left([姓名],1)=“王” ; left(“姓名”,1)=“姓” 从字符串表达式右侧第一个字符开始截取n个字符
数据库基础 及应用
逻辑运算真值表
A T T F F B T F T F NOT A F F T T A AND B A OR B T F F F T T T F
数据库基础 及应用
例:
1、3>5
and 5<7 2、3>5 or 5<7 3、not 3>5
数据库基础 及应用
4.3 用设计视图创建和修改查询
数据库基础 及应用
4.3 用设计视图创建和修改查询
⑶. 和空值有关的运算符 和空值有关的运算符有以下两个: Is Null:用于指定一个字段为空。 Is Not Null:用于指定一个字段为非空。 例如,如果“出生日期”字段的准则行输入“Is Null” 表示查找该字段值为空的记录。如果输入“Is Not Null”表示查找该字段值为非空的记录。 ⑷. Like 这个运算符用于在文本字段中指定查找模式,它通常 和以下的通配符配合使用。 “?”:表示该位置可以匹配任何一个字符。 “*”:表示该位置可匹配零个或多个字符。
数据库基础 及应用
如何进行查询?——两步
首先,设计查询(创建SQL语句) 其次,运行查询(运行SQL语句)
设计查询的方法: 查询向导(高效的工具,直观、简便,可完成大部分常规的查询 ) 使用查询设计视图
以上方法Access会自动生成相应的SQL语句
直接手工书写SQL语句方式(难度大,一般先用方法1建 立初步查询,然后用方法2修改已生成的SQL语句)
查询1980年 出生的记录
查询本月出生 的记录 查询1980年 4月出生的记 录
>= #1980-4-1# and <=#1980-4-30#
数据库基础 及应用
4.3 用设计视图创建和修改查询
例4.9 查询产品表中单位 数量为每袋的产品
例4.8 查询“调味 品”的产品情况
数据库基础 及应用
例4.10设 计一个年 度订单的 客户信息 查询
数据库基础 及应用
输入内容时应注意的事项:
1、条件表达式中使用的定界符: 字段变量 : [ ] 文本常量 : “ ” 日期常量 :# # 2、除中文外所有符号均是在英文状态下输 入!
数据库基础 及应用
4.3 用设计视图创建和修改查询
数值函数
功能 返回数值表达式值的绝对值 例:abs(-4)=4 返回数值表达式值的整数部分 例: Int(3.1415926)=3 返回数值表达式值的平方根 例: Sqr(4)=2 返回数值表达式值的符号值 例:sgn(5)=1 sgn(-5)=-1 返回保留n位小数的数值表达式值 例:round(5.2431,2)=5.24
难点: 操作查询、SQL查询、交叉表查询、重复项 查询、不匹配项查询、SQL语句 重点: 如何使用简单查询、以及如何使用设计视图 建立查询,并掌握修改查询、为查询设置 准则、在查询中进行计算、创建参数查询 的方法
数据库基础 及应用
学习内容
4.1查询概念 根据给定的条件,从数据库的表或已有的查询 中筛选出符合条件的记录,构成用户需要的 数据集合;或汇总、统计、添加、删除、更 新、修改等操作。
查询姓名为海楠或王平的记 录
查询所有姓王的记录 查询学号第3位和第4位为 11的记录(或11年入学的记录)