VF4总结2011.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
VF4总结2011

查询的意义: 通过设置筛选条件,从给定的一个或多个表中检索出符合要求的字段、记录、以及排序结果、分组统计; 也可以将查询的命令保存为程序文件,多次运行,每次运行可以获得动态记录集; 所以,建立数据库和表是通过查询来体现其应用价值。 1.简单的基于单表的查询 无条件查询 例4.1 从职工关系中检索所有工资 SELECT 工资 FROM 职工 SELECT DISTINCT 工资 FROM 职工 (DISTINCT短语的作用是去掉查询结果中的重复值。) 例4.2 检索仓库关系中的所有元组 SELECT 仓库号,城市,面积 FROM 仓库 此命令等同于 SELECT * FROM 仓库 其中“*”是通配符,表示所有属性,即字段。 有条件查询 例4.4 检索哪些仓库有工资多于1210元的职工 SELEST DISTINCT 仓库号 FROM 职工 WHERE 工资1210 例4.5 给出在仓库“WH1”或“WH2”工作,并且工资少于1250元的职工号 SELECT 职工号 FROM 职工; WHERE 工资1250 and ; (仓库号=WH1 or 仓库号=WH2) Select是一条完整的语句,如果要分行使用分号“;”(续行符)断开,但是,分号前后不能输入其它任何符号。 这里用 where制定了查询条件,查询条件可以是任意复杂的逻辑表达式。 仓库号=WH1 or 仓库号=WH2 等价于: 仓库号 in (WH1,WH2) 仓库号 not in (WH1,WH2) 等价于: 仓库号WH1 and 仓库号WH2 2.基于多表的联合查询 如果目标字段来自一个表,筛选条件来自另一个表。 例如: 查询职工工资大于2000的职工所在城市及仓库面积? (目标字段来自仓库表,条件来自职工表) Select 城市,面积 from 仓库表, 职工表 Where工资2000 and (仓库表.仓库号=职工表.仓库号) 通过检索职工表,可以获得工资2000的职工所在仓库号,再利用获得的仓库号去检索仓库的信息。 等价于: Select 城市,面积 from 仓库表 where仓库号in (select仓库号 from职工表 Where工资2000) Where 仓库号in() 嵌套子查询 这就意味着工资2000的职工所在仓库的仓库号,是前一个查询的取值范围。 如果目标字段来自多个表,筛选条件来自多个表。 例如: 查询职工工资大于3000的工作的城市,工资。 Select 城市,工资 from 仓库表, 职工表 Where工资3000 and (仓库表.仓库号=职工表.仓库号) 等价于: Select 城市,工资 from 仓库表 Inner Join职工表 On 仓库表.仓库号=职工表.仓库号 Where工资3000 自然连接(内连接) 学生表(学号,姓名,性别,专业,出生日期) 考试表(学号,科目,成绩,时间) 例题1: 查询考试成绩大于等于90的学生的姓名、专业? Select Distinct 姓名,专业 from 学生表 where学号 in (select 学号 from考试表 where成绩=90) 例题2: 查询没有考试的学生的姓名? Select 姓名 from 学生表 where 学号 Not in (select 学号 from考试表) 3.特殊查询 (1)数值区间作为条件(必须是闭区间而且左小右大) 成绩 Between 60 And 100 等价于: 成绩=60 And 成绩=100 日期、时间 出生日期Between {^1990-01-01} And {^1990-12-31} Year(出生日期)=1990 (2)模糊查询 例题1: 从供应商表中检索出全部公司的信息(以“公司”两个字结尾的供应商名称)? SELECT * FROM 供应商 ; WHERE 供应商名 LIKE %公司 例题2: 查询学生表中姓“李”的学生信息? SELECT * FROM 学生表 ; WHERE 姓名 LIKE 李% 或:WHERE Left(姓名,2)=李 例题3: 查询科目中包含“计算机”三个字的考试信息? SELECT * FROM 考试表 ; WHERE 科目 LIKE %计算机% 这里的LIKE是字符串匹配运算符, 通配符: 通配符”%”表示0个或多个任意字符; 通配符“_”表示一个任意字符。 (3)取反运算、集合运算 != Not() (4)空值运算 某些字段的取值允许为空值 字段名 Is Null 字段名 Is Not Null 4.查询结果排序 例4.14 按职工的工资值升序检索出全部职工信息? S

文档评论(0)

baoyue + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档