书签 分享 收藏 举报 版权申诉 / 46
上传文档赚钱

类型vfp(第3版)课件:2 sql常用.ppt

  • 上传人(卖家):罗嗣辉
  • 文档编号:2088502
  • 上传时间:2022-02-14
  • 格式:PPT
  • 页数:46
  • 大小:1.81MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《vfp(第3版)课件:2 sql常用.ppt》由用户(罗嗣辉)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    vfp第3版课件:2 sql常用 vfp 课件 sql 常用
    资源描述:

    1、SQL语言(1)数据查询 SELECT(2)数据定义 CREATE、DROP、ALTER(3)数据修改 INSERT、UPDATE、DELETE(4)数据控制 GRANT、REVOKESELECTSELECT语句格式以及说明语句格式以及说明SELECT ALL|DISTINCT TOP|PERCENT, AS FROM ,WHERE GROUP BY HAVING ORDER BY ASC|DESCINTO ARRAY |INTO CURSOR |INTO DBF|TABLE |TO FILE ADDITIVE|TO PRINTERPROMPT一一. .简单查询简单查询( (对单表的查询对单表

    2、的查询 )Select From From 后接表名,指定查询的信息来自于哪些表。例:From 学生 From 学生,选课,课程Select 后接*、字段名、表达式,用来指定查询结果包含那些列。例:Select * Select 学号,姓名 Select 性别,学号+姓名 女男女男性别性别21222223年龄年龄Bob004Bob003Alice002Tom001姓名姓名学号学号学生学生.dbf.dbf例1:Select * From 学生女男女男性别性别21222223年龄年龄Bob004Bob003Alice002Tom001姓名姓名学号学号Select 学号,姓名; From 学生Sel

    3、ect 性别,学号+姓名; From 学生Bob004Bob003Alice002Tom001姓名姓名学号学号女男女男性别性别004Bob003Bob002Alice001TomExp_2Exp_2 36.1 select 单表 横向统计学号学号姓名姓名性别性别年龄年龄001Tom男23002Alice女22003Bob男22004Bob女21学生.dbf例:查询所有学生的学号和年龄信息Select 学号,年龄 From 学生学号学号年龄年龄00123002220032200421例:查询年龄大于22的学生的学号和年龄信息Select 学号,年龄 From 学生 Where 年龄22学号学号年

    4、龄年龄00123例:查询年龄大于22的男生的学号和年龄信息Select 学号 From 学生 Where 性别=“男”and 年龄20 Where 学生.学号=选课.学号各种条件运算符含义举例=、=、=、!=、比较大小民族=汉AND、OR多重条件专业=外语 AND 入学成绩520BETWEEN AND 确定范围确定范围入学成绩入学成绩 BETWEEN 500 AND 520LIKE字符匹配姓名 LIKE 王%NOT否定运算符NOT 民族=汉比较查询 查询“学生”表中汉族学生的姓名、民族和入学成绩信息。SELECT 姓名,民族,入学成绩 FROM 学生 WHERE 民族=汉“ 查询“学生”表中少

    5、数民族学生的姓名、民族和入学成绩信息。SELECT 姓名,民族,入学成绩 FROM 学生 WHERE 民族!=汉 多重条件查询 在“学生”表中查询外语专业中入学成绩小于520分的学生的学号、姓名、和入学成绩信息。SELECT 学号,姓名,入学成绩 FROM 学生;WHERE 专业=外语 AND 入学成绩520范围查询 在“学生”表中查询外语专业中入学成绩小于520分的学生的学号、姓名、和入学成绩信息。SELECT 学号,姓名,入学成绩 FROM 学生;WHERE 专业=外语 AND 入学成绩520 查询入学成绩在500分到520分之间(包含500分和520分)的学生的学号、姓名和入学成绩信息。

    6、SELECT 学号,姓名,入学成绩 FROM 学生;WHERE 入学成绩 BETWEEN 500 AND 520字符串匹配查询 查询“学生”表中所有姓王的学生信息。SELECT * FROM 学生 WHERE 姓名 LIKE 王%“ 查询“课程”表中所有课程名中含有“大学”两个字的课程名。SELECT 课程名 FROM 课程 WHERE 课程名 LIKE %大学%like语句: “ab” like “a%” “ab” like “a_”Like函数: like(“a*”, “ab”) like(“a?”, “ab”)逻辑型字段条件查询 查询“教师”表中所有党员教师的信息。SELECT * FR

    7、OM 教师 WHERE 党员否=.T.SELECT * FROM 教师 WHERE 党员否虚拟字段条件查询 查询学生表中年龄小于19岁学生的学号、姓名和年龄信息。SELECT 学号,姓名,YEAR(DATE()-YEAR(出生日期) AS 年龄 FROM 学生;WHERE YEAR(DATE()-YEAR(出生日期)2020, Year(Date()-Year(生日生日) As 年龄年龄 ;用用orderorder关键字对查询结果排序关键字对查询结果排序SELECT ;FROM ;ORDER BY ASC|DESC , ASC|DESC , (注:字段名可以用字段序号代替)学号姓名性别年龄00

    8、4Bob女21002Alice女22003Bob男22001Tom男23SELECT * FROM 学生;ORDER BY 年龄SELECT * FROM 学生;ORDER BY 年龄 DESC学号姓名性别年龄001Tom男23002Alice女22003Bob男22004Bob女2144用用order对多个关键字排序对多个关键字排序学号姓名性别年龄004Bob女21002Alice女22003Bob男22001Tom男23SELECT * FROM 学生;ORDER BY 年龄,学号 DESC例:先按年龄升序排列,年龄相同的再按学号降序排列SELECT TOP|PERCENT ;FROM ;

    9、ORDER BY;保留排序结果的前保留排序结果的前n(百分之百分之n)条记录条记录SELECT TOP 10 *;FROM student;ORDER BY 英语 DESC;SELECT TOP 20 PERCENT *;FROM student;ORDER BY 英语;查询英语成绩前10名的学生记录。查询按英语成绩升序排序前百分之20名的学生记录。对查询结果排序使用ORDER BY语句按照一个或多个字段对查询结果进行升序(ASC)或降序(DESC)排列,默认为升序排列。 对于空值排序,升序时空值记录将最后显示,降序时将最先显示。ORDER BY语句只能对最终的查询结果进行排序,在子查询中不能

    10、使用。 ORDER BY语句后不能接任何运算表达式,不能按某个表达式的运算结果进行排序。 使用TOP PERCENT语句可以只显示排序之后的前几条记录或前百分之多少条记录。 4.1 select 单表 前n项SELECT ;FROM ; INTO ARRAY 或INTO CURSOR 或 INTO DBF|TABLE 或TO FILE 设置查询去向设置查询去向 49.2 select 单表 存到文本文件二.联接查询(查询操作涉及到两个或两个以上的表时用连接查询)学生.dbf选课.dbf课程.dbf 教师.dbf 例:查询所有女学生体育课程的学号和成绩信息。学号学号 姓名姓名 性别性别 入学成绩

    11、入学成绩001 李小华 女 525002 王艳芳 女 510003 吴海洋 男 508 学号学号_A 姓名姓名 性别性别 入学成绩入学成绩 学号学号_B 课程号课程号 成绩成绩 学号学号 课程号课程号 成绩成绩 001 C001 95 001 C004 85 002 C001 90 003 C001 92 003 C003 86学生学生 001 李小华 女 525 001 C001 95 001 李小华 女 525 001 C004 85 001 李小华 女 525 002 C001 90 001 李小华 女 525 003 C001 92 001 李小华 女 525 003 C003 86

    12、002 王艳芳 女 510 001 C001 95 002 王艳芳 女 510 001 C004 85 002 王艳芳 女 510 002 C001 90 002 王艳芳 女 510 003 C001 92 002 王艳芳 女 510 003 C003 86 003 吴海洋 男 508 001 C001 95 003 吴海洋 男 508 001 C004 85 003 吴海洋 男 508 002 C001 90 003 吴海洋 男 508 003 C001 92 003 吴海洋 男 508 003 C003 86 selectselect * * fromfrom 学生学生, ,选课选课或或

    13、selectselect 学生学生. .学号学号, ,姓名姓名, ,性别性别, ,入学成绩入学成绩, ,选课选课. .学号学号, ,课程号课程号, ,成绩成绩 fromfrom 学生学生, ,选课选课选课选课1.无条件无条件联接查询联接查询 无意义!例:查询学生的学号、姓名、课程号和成绩的信息选课选课 学生学生 select * from 学生,选课select 学生.学号,姓名,课程号,成绩 from 学生,选课 where 学生.学号=选课.学号2.条件条件联接查询联接查询 where 学生.学号=选课.学号增加条件:增加条件:select 学生.学号,姓名,课程号,成绩 from 学生,

    14、选课 ;where 学生.学号=选课.学号select 学生.学号,姓名,课程号,成绩 from 学生,选课 ;where 学生.学号=选课.学号and 成绩90例:查询学生的学号、姓名、课程号、课程名和成绩的信息。选课选课 学生学生 课程 select from where 学生.学号,姓名,选课.课程号,课程名,成绩;学生,选课,课程;学生.学号=选课.学号 and 选课.课程号=课程.课程号三个表条件三个表条件联接查询联接查询 29.1 select 双表 连接 31.1 select 双表 连接 简单查询(单表) 联接查询(多表)无条件联接查询条件联接查询超联接查询内联接查询左联接查询

    15、右联接查询全联接查询【超联接查询格式】SELECTFROM I INNER | LEFT | RIGHT | FULL JOIN ON WHERE超联接-内联接(满足条件就相连)select * from 学生 JOIN 选课 ON 学生.学号=选课.学号select * from 学生 INNER JOIN 选课 ON 学生.学号=选课.学号或select * from 学生 where 学生.学号=选课.学号 (就是内联结)超联接-左联接(内连记录+左表不满足条件的记录)select * from 学生 left JOIN 选课 ON 学生.学号=选课.学号超联接-右联接(内连记录+右表不

    16、满足条件的记录)select * from 学生 right JOIN 选课 ON 学生.学号=选课.学号超联接-全联接(内连记录+左右表不满足条件的记录)select * from 学生 full JOIN 选课 ON 学生.学号=选课.学号返回select * from 学生,选课,课程统计查询(分组统计查询) COUNT( 字段名 或 *) 统计记录个数个数。 SUM(字段名) 计算某一列值的总和总和(字段必须是数值型)。 AVG( 字段名) 计算某一列的平均值平均值( (字段必须是数值型)。 MAX(字段名) 计算某一列值的最大值最大值。 MIN(字段名) 计算某一列值的最小值最小值。

    17、统计查询(最大值max( )、最小值min()选课【例】查询分数最高的成绩Select max(成绩) As 最高分 From 选课【例】查询001学生的最低成绩Select min(成绩) From 选课 Where 学号=“001”统计查询(和求sum( )、求平均avg( )选课【例】查询学号为”001”的平均成绩Select avg(成绩) From 选课 where 学号=001【例】所有成绩的总分Select sum(成绩) From 选课统计查询(行数COUNT(* )选课【例】查询选课门数Select count(*) as From 选课选课门数查询“某某数”信息时,使用:S

    18、elect count(*) as 某某数 from 例如:选课门数、人数、金牌数、奖牌数、课程数、订单数分组统计查询(用Group by 分组,用筛选having分组结果)【例】统计各职称的人数Select 职称, count(*) as 人数 From 教师 Group by 职称 教师【例】统计各职称的人数,但只保留人数大于1的记录Select 职称, count(*) as 人数 From 教师;Group by 职称;Having 人数1【例】统计总人数Select count(*) as 人数 From 教师 或 Having count(*)1 但不允许 where人数1 或 w

    19、here count(*)1 筛选条件中有和(sum)、平均(avg)、最大(max)、最小(min)、行数(count)统计信息时,必须把筛选条件放到having中。having Group by A 则默认按A的升序排列。分组的默认顺序教师【例】统计各性别内每种职称的人员数Select 性别+职称,count(*) 人数 ;From 教师;Group by 性别+教师分组统计查询(用多个字段分组) 只要提干中涉及和(sum)、平均(avg)、最大(max)、最小(min)、行数(count)统计信息时,基本都需要分组。啥时候分组呢分组练习 48 max min avg 80 avg 分组筛选 43 count 金牌数 26 count 选课门数 51 sum(数量*单价)

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:vfp(第3版)课件:2 sql常用.ppt
    链接地址:https://www.163wenku.com/p-2088502.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库