您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 咨询培训 > 04-SQL简单查询(基本语句)
Copyright©OracleCorporation,2001.Allrightsreserved.基本SQLSELECT语句1-2Copyright©OracleCorporation,2001.Allrightsreserved.目标通过本章学习,将可以:•列举SQLSELECT语句的功能。•执行简单的SELECT语句。•SQL语言和SQL*Plus命令的不同。1-3Copyright©OracleCorporation,2001.Allrightsreserved.SQL语言概述•SQL(StructuredQueryLanguage)是一种结构化查询语言,简称为SQL。它是1972年在SQUARE(SpecifyingQueriesAsRelationalExpression)语言的基础上由Boyce和Chamberlin提出的一个标准的、通用的结构化查询语言,后来将SEQUEL改为SQL。•1989年,美国ANSI采纳了ANSIX3.134—1989报告中定义的关系数据库管理系统的SQL标准语言,称为ANSISQL89。该标准被国际标准化组织(ISO)和美国联邦政府组织所采纳。1-4Copyright©OracleCorporation,2001.Allrightsreserved.SQL语言的功能种类•SQL语言按照功能可以分为四大类:•(1)数据查询语言,主要用于查询数据,以SELECT语句为主要关键词。•(2)数据定义语言DDL,用于定义SQL模式、基本表、视图和索引。•(3)数据操纵语言DML,主要用于完成数据修改操作。•(4)数据控制语言DCL,用于控制对数据库的访问,服务器的关闭、启动等。1-5Copyright©OracleCorporation,2001.Allrightsreserved.SQLSELECT语句的功能列表表1表2Join行表1-6Copyright©OracleCorporation,2001.Allrightsreserved.基本SELECT语句SELECT*|{[DISTINCT]字段名|表达式[别名],...}FROM表名称;•SELECT和FROM称为关键字•SELECT子句标识选择哪些列•FROM子句标识从哪个表中选择SELECT子句FROM子句1-7Copyright©OracleCorporation,2001.Allrightsreserved.语句中的常用字符含义•*表示查询出所有字段。•DISTINCT表示删除重复记录,只留下不同的值。•字段名:列名。•别名:自定义的新列名。•|表示“或者”。•{}表示“集合”。•[]表示“可选项”,即[]里的内容可以写也可以不写。SELECT*|{[DISTINCT]字段名|表达式[别名],...}FROM表名称;1-8Copyright©OracleCorporation,2001.Allrightsreserved.SELECT*FROMdept;1、选择全部列1-9Copyright©OracleCorporation,2001.Allrightsreserved.SELECTdeptno,locFROMdept;2、选择特定的列1-10Copyright©OracleCorporation,2001.Allrightsreserved.编写SQL语句注意事项•SQL语言大小写不敏感•SQL可以写在一行或者多行•关键字不能被缩写也不能分行•各子句一般要分行写•使用缩进提高语句的可读性1-11Copyright©OracleCorporation,2001.Allrightsreserved.列头设置•SQL*Plus:–字符和日期类型的列左对齐–数值类型的列右对齐–默认头显示方式:大写1-12Copyright©OracleCorporation,2001.Allrightsreserved.算术运算符数字和日期使用的数学表达式。操作符+-*/描述加减乘除1-13Copyright©OracleCorporation,2001.Allrightsreserved.SELECTename,sal,sal+300FROMemp;3、使用数学运算符1-14Copyright©OracleCorporation,2001.Allrightsreserved.操作符优先级•乘除的优先级高于加减。•同一优先级运算符从左向右执行。•括号内的运算先执行。*/+_1-15Copyright©OracleCorporation,2001.Allrightsreserved.SELECTename,sal,12*sal+300FROMemp;操作符优先级1-16Copyright©OracleCorporation,2001.Allrightsreserved.SELECTename,sal,12*(sal+100)FROMemp;使用括号1-17Copyright©OracleCorporation,2001.Allrightsreserved.SELECTename,job,sal,commFROMemp;定义空值•空值是无效的,未指定的,未知的或不可预知的值。•空值不是空格或者0。1-18Copyright©OracleCorporation,2001.Allrightsreserved.SELECTename,12*sal*commFROMemp;空值在数学运算中的使用包含空值的数学表达式的值都为空值1-19Copyright©OracleCorporation,2001.Allrightsreserved.列的别名列的别名:•重命名一个列。•便于计算。•紧跟列名,也可以在列名和别名之间加入关键字‘AS’,以便在别名中包含空格或特殊的字符并区分大小写。1-20Copyright©OracleCorporation,2001.Allrightsreserved.4、使用别名SELECTenameASname,commcommissionFROMemp;SELECTename“name,comm“commissionFROMemp;1-21Copyright©OracleCorporation,2001.Allrightsreserved.5、连接符连接符:•把列与列,列与字符连接在一起。•用‘||’表示。•可以用来“合成”列。1-22Copyright©OracleCorporation,2001.Allrightsreserved.SELECTename||jobASEmployeesFROMemp;连接符应用举例1-23Copyright©OracleCorporation,2001.Allrightsreserved.字符串•字符串可以是SELECT列表中的一个字符,数字,日期。•日期和字符只能在单引号中出现。•每当返回一行时,字符串被输出一次。1-24Copyright©OracleCorporation,2001.Allrightsreserved.SELECTename||'isa'||jobASEmployeeDetailsFROMemp;6、字符串1-25Copyright©OracleCorporation,2001.Allrightsreserved.重复行默认情况下,查询会返回全部行,包括重复行。SELECTdeptnoFROMemp;1-26Copyright©OracleCorporation,2001.Allrightsreserved.SELECTDISTINCTdeptnoFROMemp;7、删除重复行在SELECT子句中使用关键字‘DISTINCT’删除重复行1-27Copyright©OracleCorporation,2001.Allrightsreserved.SQL和SQL*PlusSQL语句Oracle服务器查询结果SQL*Plus命令客户端格式化报表浏览器SQL*Plus1-28Copyright©OracleCorporation,2001.Allrightsreserved.SQL语句与SQL*Plus命令SQLstatementsSQL•一种语言•ANSI标准•关键字不能缩写•使用语句控制数据库中的表的定义信息和表中的数据SQL*Plus•一种环境•Oracle的特性之一•关键字可以缩写•命令不能改变数据库中的数据的值•集中运行SQL*Pluscommands1-29Copyright©OracleCorporation,2001.Allrightsreserved.SQL*Plus使用SQL*Plus可以:•描述表结构。•编辑SQL语句。•执行SQL语句。•将SQL语句保存在文件中并将SQL语句执行结果保存在文件中。•在保存的文件中执行语句。•将文本文件装入SQL*Plus编辑窗口。1-30Copyright©OracleCorporation,2001.Allrightsreserved.例如:使用DESCRIBE命令,表示表结构DESC[RIBE]tablename1-31Copyright©OracleCorporation,2001.Allrightsreserved.DESCRIBEemp;1-32Copyright©OracleCorporation,2001.Allrightsreserved.总结SELECT*|{[DISTINCT]column|expression[alias],...}FROMtable;通过本课,应该可以完成:•书写SELECT语句:–返回表中的全部数据。–返回表中指定列的数据。–使用别名。•使用SQL*Plus环境,书写,保存和执行SQL语句和SQL*Plus命令。
本文标题:04-SQL简单查询(基本语句)
链接地址:https://www.777doc.com/doc-3050561 .html