第9章 查询.ppt

  1. 1、本文档共45页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第9章 查询

数据库应用基础 第9章 查询 在本章里,您将学习以下主要内容: 组成查询条件的一般要求 在查询条件中确定范围、使用集合 控制结果显示行数 在查询中使用聚集函数 进行分组查询及统计计算 多表连接查询的实现方法 子查询与嵌套查询的概念与用法 追加记录的查询 更新记录数据的查询 删除记录的查询等 9.1 简单条件查询 如果在查询中加入了用于识别所需特定记录的限制条件,此类查询属于条件查询。 9.1.1 查询条件的一般要求 查询条件通常为与被查询表中记录相关的关系表达式或逻辑表达式,例如: 科室号=02 性别=女 AND 职称=正主任医师 组成查询条件需注意以下几点: 表达式中应包含表中的字段 条件中的关系表达式 条件中的逻辑表达式 在条件中使用函数 ACCESS的部分函数 算术函数 FIX(数值),返回指定数值的整数部分; INT(数值),返回小于等于指定数值的最大整数; ROUND(数值[,小数位数]) ,按照指定小数位数进行四舍五入; ACCESS的部分函数 文本函数 LEN(字符串) ,返回字符串中包含的字符个数; LEFT(字符串,字符数),返回字符串中最左边的指定个字符; MID(字符串,位置[,字符数]),返回字符串中从指定位置开始的指定个字符; RIGHT(字符串,字符数),返回字符串中最右边的指定个字符; TRIM(字符串),删除字符串左边的空格; UCASE(字符串),将字符串中的小写字母转换为大写; ACCESS的部分函数 日期/时间函数 DATE(),取得系统当前的日期,没有参数; TIME(),返回系统当前时间,无参数; DAY(日期),返回日期中的日; MONTH(日期),返回日期中的月份; YEAR(日期),返回日期中的秒; DATEADD(时间单位,数字,日期),返回指定日期加上一段时间后的日期,时间 DATEDIFF(时间单位,日期1,日期2),按指定时间单位计算两个日期间的时间间隔数目; ACCESS的部分函数 转换函数 CBOOL(表达式),当表达式的值为0时,结果为 False,否则为True; CDATE(表达式),将表达式的值转换为日期型数据; CDBL(表达式),将表达式的值转换为双精度数值; CINT(表达式),将表达式的值转换为整型数值; CSTR(表达式),将表达式的值转换为字符串。 9.1.2 在查询条件中进行字符匹配 相等 姓名=‘张援’ 部分相等 LEFT(姓名,1)=‘张’ 子串查找 使用LIKE运算符。使用LIKE运算符时,一般需要借助两种通配符来描述查询条件。 * 星号表示可以匹配多个字符。 ? 问号表示可以匹配单个字符。 在医生表中查找姓“刘” 的医生记录。 SELECT * FROM 医生 WHERE 姓名 Like ‘刘* 查询医生表中姓名中含“军”字的医生记录。 SELECT * FROM 医生 WHERE 姓名 like *军* 在医生表中查找姓“张”并且是名为单字的医生记录。 SELECT * FROM 医生 WHERE 姓名 Like 张? 查询库存药品里药品名称中含有“霉素”二个字的药品记录。 SELECT * FROM 库存药品 WHERE 药品名称 like *霉素* 9.1.3 在查询条件中确定范围 当需要查询某个范围内的数据,可以使用逻辑表达式来构成条件。例如,查询库存数量在20~100间的药品记录,可以使用如下表达式:库存数量=20 AND库存数量=100 另外一种表达方法为: 字段或表达式 [NOT] BETWEEN 下界 AND 上界 用于比较的数据类型要一致 对于数值型字段或者数值型表达式,应该用数值常量来规定下界和上界; 对于字符型字段或者字符型表达式,应该用字符常量来规定下界和上界。 查询单价在4.12至5.79范围内的药品记录。 SELECT * FROM 库存药品 WHERE 药品单价 BETWEEN 4.12 AND 5.79 查询单价不在10.00至49.99范围内的药品记录。 SELECT * FROM 库存药品 WHERE 药品单价 NOT BETWEEN 10.00 AND 49.99 查询单价涨价12%后在10.00至15.50范围内的药品记录。 SELECT * FROM 库存药品 WHERE 药品单价*1.12 BETWEEN 10.00 AND 15.50 查询库存药品中“药品拼音”首字母在“A”到“B”范围内的药品记录。(假设库存药品表中有药品拼音字段) SELECT * FROM 库存药品 WHERE LEFT(药品拼音,1) BETWEEN A AND B 查询2007-1-1至2007-4-1的挂号记录 S

文档评论(0)

zw4044 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档