数据库管理系统中的SQL语言.docx

上传人:罗晋 文档编号:8653387 上传时间:2020-12-14 格式:DOCX 页数:7 大小:16.39KB
返回 下载 相关 举报
数据库管理系统中的SQL语言.docx_第1页
第1页 / 共7页
数据库管理系统中的SQL语言.docx_第2页
第2页 / 共7页
数据库管理系统中的SQL语言.docx_第3页
第3页 / 共7页
数据库管理系统中的SQL语言.docx_第4页
第4页 / 共7页
数据库管理系统中的SQL语言.docx_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《数据库管理系统中的SQL语言.docx》由会员分享,可在线阅读,更多相关《数据库管理系统中的SQL语言.docx(7页珍藏版)》请在三一文库上搜索。

1、数据库管理系统中的SQL语言数据库管理系统中的SQL语言SQL的 9 条核心命令动词 :SELECT数据查询CREATE/DROP/ALTER数据定义INSERT/UPDATE/DELETE数据操纵GRANT/REVOKE数据控制数据库的定义SQL的作法 :CREATE DATABASE数据库文件名VFP的作法 :无直接创建数据库的SQL命令数据库的管理1、显示数据库信息SP_HELPDB数据库名 2、配置数据库SP_DBOPTION数据库名 , 选项名 , 值 3、重新命名SP_RENAMEDB原名 ,新名 4、删除数据库DROP DATABASE数据库名数据表的定义在 SQL Server

2、 2000与 Visual FoxPro 中都可以使用 SQL语言定、操作管理与删除数据表SQL基本表作法 :CREATE TABLE数据库名 , 所有者 , 表名VFP基本表作法 :CREATE TABLE|DBF表名 FREE(字段名 1类型 (长度 ,小数位数 )数据表的管理1、查瞧表的结构SQL作法:SP_HELPOBJNAME=NAME数据库管理系统中的SQL语言2、修改表 构SQL作法:ALTER TABALE表名ADD |ALTER COLUMN | DROP COLUMN字段名 1 型 ( 度) NULL NOT NULLVFP作法:ALTER TABALE表名ADD |ALT

3、ER COLUMN字段名 1 型 ( 度 , 小数位数 NULL NOT NULL3、表的 除SQL作法与 VFP 作法相同DROP TABALE表名4、数据的插入SQL作法:INSERT INTO 表名 ( 列名)VALUES 表(达式 )VFP作法:INSERT INTO表名(字段名 1 ,字段名 2 ) VALUES (表达式 1 ,表达式 2 )5、数据的更新SQL作法:UPDATE 表名SET 列名 =表达式| DEFAULT |NULL,WHERE 条件VFP作法:UPDATE 库名! 表名SET 字段 =表达式, WHERE 条件6、数据的 除SQL作法:DELETE FROM

4、表名WHERE 条件VFP作法:DELETE FROM表名WHERE 条件索引的建立与删除索引的 建SQL作法:CAEATE UNIQUE CLUSTERED INDEX索引名ON 表名VFP作法:无 建索引的SQL 句数据库管理系统中的SQL语言索引的 除SQL作法:DROP INDEX表名、 索引名, VFP作法:无视图的定义与删除定 SQL作法:CREATE VIEW 名( 列名 1, 列名 2,)WITHENCRYRTIONAS 句WITHCHECK OPTIONVFP作法:CREATE VIEW 名( 列名 ,列名 )AS 任意 SELECT语句 的 除SQL作法:DROP VIEW

5、 名, VFP作法:DROP VIEW 名SQL语言的数据查询功能SQL中 SELECT作法 :SELECT ALL | DISTINCT 表名、 列名表达式| 表名、 AS 列 ,FROM 表名或 名, WHERE 条件表达式 VFP中 SELECT作法 :SELECT ALL | DISTINCT 别名、 字段表达式 AS 列名, FROM 名! 表名或 名 AS 本地 名 简单查询1、 表所有字段SQL作法与 VFP 作法相同SELECTFROM 表名2、 数据表的指定列EG:数据库管理系统中的SQL语言在 QL Server 2000中查找表 STUDENT1中 XH、XM、CJ三列的

6、全部行 ,并将 CJ列用“成绩”标题表示SQL作法:SELECT XH、XM、CJAS 成绩 FROMSTUDENT1在 Visual FoxPro中,查询课程 KC的 KM、XF字段的全部记录 ,并将 KM 字段用“课程名”表示VFP作法:SELECT KMAS 课程名 ,XFFROM KC3、使用列表达式查询EG:在 QL Server 2000中,查询表 STUDENT1中 XM 列及 4 门课程的平均成绩 ,并且查询每人的出生年份SQL作法:SELECTXM ,ROUND (CJ/4,1)AS 平均成绩, YEAR (GETDATE ()-NL AS出生年份FROM STUDENT1在

7、 Visual FoxPro中,查询课程表 KC的 KH、 KM、XF的全部记录 ,并将 XF字段值加 1 用“总学分”表示VFP作法:SELECT KH、KM、 XF+1AS 总学分FROMKC4、不输出重复行的查询EG:在 QL Server 2000中,查询表 STUDENT1全部行的 XB与 NL列值 ,再查询不符合重复行的情况SQL作法:SELECT XB,NLFROMSTUDENT1在 Visual FoxPro中,查询课程表 KC的 XF字段的全部记录 ,不显示重复记录VFP作法:SELECT DISTINCT XFFROMKC5、查询结果排序输出EG:在 QL Server 2

8、000中,查询表 STUDENT1时要求先按年龄由小到大,再按总平均成绩由大到小显示学生信息SQL作法:SELECTFROMSTUDENT1 ORDER BYNL,CJ/4DESC在 Visual FoxPro中,查询课程表 KC中 XF按降序排列 ,KH按升序排列后的的结果VFP作法:SELECTFROM KC ORDER BYXFDESC,KH6、只输出部分行的查询EG:在 QL Server 2000中,查询表 STUDENT1时要求先按年龄由小到大排序后显示前3 条学生信息 ,或显示前 60记录数据库管理系统中的SQL语言SQL作法:SELECT TOP 3FROMSTUDENT1 O

9、RDER BYNLSELECT TOP60PERCENT FROMSTUDENT1 ORDER BYNL在 Visual FoxPro中,只显示 KC 表排序后的 70的记录 ,再显示前 3 条记录VFP作法:SELECT FROMKCORDER BYXFDESC TOP70PERCENTSELECT FROMKC ORDER BYXFDESC TOP37、满足逻辑条件的查询EG:在 QL Server 2000中,查询表 STUDENT1中总成绩大于等于300 分的男学生SQL作法:SELECTFROMSTUDENT1 WHERE CJ =300ANDXB=男在 Visual FoxPro中

10、,查询课程表 KC中 XF字段值不为 5 的全部记录VFP作法:SELECT FROMKCWHERE XF!=58、查询含有空值NULL的记录语法格式 :IS NULL / IS NOT NULLEG:在 QL Server 2000中,查询表 STUDENT1中性别 XB为空的行SQL作法与 VFP 作法相同 :SELECTFROMSTUDENT1 WHERE XB IS NULL9、控制输出方向EG:在 QL Server 2000中,查询表 STUDENT1中只有女生数据的子集作为查询结果备份SQL作法:SELECT INTOSTUDENT_A FROM STUDENT1 WHERE X

11、B=女在 Visual FoxPro中,查询 KC表所有字段的全部记录,并用打印机方式输出VFP作法:SELECT FROMKCTOPRINTER10、使用统计 (聚合 )函数查询EG:数据库管理系统中的SQL语言在 QL Server 2000中,在表 STUDENT按 NL 平均值与 CJ总分统计查询SQL作法:SELECT统计AS 类别 , AVG(NL) AS平均年龄 , SUM(CJ) AS总分 FROMSTUDENT1在 Visual FoxPro中,统计 KC表 XF字段的最大值VFP作法:SELECT统计AS 类别 ,MAX(XF) AS 最高学分FROM KC11、分组查询E

12、G:在 QL Server 2000中,在表 STUDENT1中统计 NL 值不同的学生人数SQL作法:SELECT统计AS 类别 ,NLAS 年龄 ,COUNT(XB) AS人数 ,AVG(CJ) AS总平均分FROMSTUDENT1 GROUP BY NL在 Visual FoxPro中,统计 KC表中按 XF的不同分组各门课程的数量VFP作法:SELECT统计AS 类别 , XF AS 学分, COUNT(KH)AS课程数FROM KC GROUP BY XF12、带清单的统计查询EG:统计表 STUDENT1中学生平均年龄总人数与总平均分SELECT FROMSTUDENT1 COMP

13、UTE AVG(NL), COUNT(XH), AVG(CJ)13、模糊查询EG:在 QL Server 2000中,查询表 STUDENT1中所有李姓的学生SQL作法:SELECT FROMSTUDENT1 WHERE XMLIKE 李在 Visual FoxPro中,显示 KC表中 KH 数的第二位就是2 的所有课程记录VFP作法:SELECT FROMKCWHERE KHLIKE _2_14、使用 BETWEEN查询语法格式 :NOTBETWEEN表达式 1 ADN表达式 2EG:在 QL Server 2000中,查询表 STUDENT1中所有成绩在300320 的学生SQL作法:SE

14、LECT FROMSTUDENT1 WHERE CJBETWEEN 300AND320(求反 ,在 WHERE前加 NOT)数据库管理系统中的SQL语言在 Visual FoxPro中,显示 KC表中 XF在 35 的记录VFP作法:SELECT FROMWHEREXFBETWEEN 3AND15、使用 IN 查询语法格式 :NOTIN(表达式 1,表达式 2,)EG:在 QL Server 2000中,查询表 STUDENT1中年龄就是 20 或 18 的学生SQL作法:SELECT FROMSTUDENT1 WHERE NLIN(20,18)在 Visual FoxPro中,显示 KC表中

15、 XF就是 3 或 5 的记录VFP作法:SELECT FROMKCWHERE XFIN(3,5)高级查询1、连接查询SQL作法与 VFP 作法相同 ,具有两个命令格式 SELECT列名表 FROM 表 1类型JOIN 表 2ON 表 1、列 = 表 2、列ELECT 列名表 FROM 表 1,表 2WHERE 表 1、列 = 表 2、列2、嵌套查询3、联合查询语法格式 :查询语句 UNIONALL 查询语句UNIONALLEG:在 QL Server 2000中,两个班级的学生表 STUDENT1与 STUDENT_A,将成绩大于等于 350 分的学生挑出来组参赛明星对SQL作法:SELECT XH,XM,XB,CJFROMSTUDENT1 WHERE CJ =350SELECT XH,XM,XB,CJFROMSTUDENT_AWHERE CJ=350在 Visual FoxPro中,同时将 JZG1与 JZG2表的基本工资大于400 的人显示输出VFP作法:SELECT XM,ZC FROM JZG1 WHERE JBGZ400UNIONSELECT XM,ZCFROMJZG2 WHERE JBZG400

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1