资源描述
第一章第一章基本的基本的SQL语语句句第一章基本的SQL语句学学 习习 目目 的的完成本章之后完成本章之后完成本章之后完成本章之后,我我我我们应该们应该们应该们应该掌握如下内容掌握如下内容掌握如下内容掌握如下内容:基本基本基本基本类类类类型的型的型的型的SQLSQL语语语语句句句句SELECTSELECT语语语语句的作用句的作用句的作用句的作用SELECTSELECT语语语语句的句的句的句的语语语语法法法法执执执执行一个基本的行一个基本的行一个基本的行一个基本的SQLSQL语语语语句句句句 数据限制与排序数据限制与排序数据限制与排序数据限制与排序SQL*PLUSSQL*PLUS的作用及与的作用及与的作用及与的作用及与SQLSQL语语语语句的区句的区句的区句的区别别别别学 习 目 的完成本章之后,我们应该掌握如下内容:基本基本类类型的型的SQL语语句句数据操作数据操作数据操作数据操作(DML):SELECT/INSERT/UPDATE/DELETE(DML):SELECT/INSERT/UPDATE/DELETE 数据定数据定数据定数据定义义义义(DDL):CREATE/ALTER/DROP/TRUNCATE (DDL):CREATE/ALTER/DROP/TRUNCATE 事事事事务务务务相关相关相关相关:COMMIT/ROLLBACK:COMMIT/ROLLBACK权权权权限相关限相关限相关限相关:GRANT/REVOKE:GRANT/REVOKE基本类型的SQL语句数据操作(DML):SE选择符合条件的行选择符合条件的行选择符合条件的行选择符合条件的行选择符合条件的列选择符合条件的列选择符合条件的列选择符合条件的列Table 1Table 1Table 2Table 2Table 1Table 1Table 1Table 1联合多个表格联合多个表格联合多个表格联合多个表格SQL SELECT语语句的作用句的作用选择符合条件的行选择符合条件的列Table 1Table 2基本的基本的SELECT 语语句句SELECTSELECTDISTINCT*,DISTINCT*,columncolumn aliasalias,.,.FROMFROMtable;table;SELECT 确定什麽列确定什麽列 FROM 确定哪个确定哪个 tableSELECTSELECTDISTINCT*,DISTINCT*,columncolumn aliasalias,.,.FROMFROMtabletableWHERE WHERE contidion;contidion;WHERE选择所要的行选择所要的行基本的SELECT 语句SELECTDISTINCT 书书 写写 SQL 语语 句句SQL 语语句不区分大小写句不区分大小写.SQL 可以可以书书写在一个或多个行写在一个或多个行.关关键键字不能字不能缩缩写或写或扩扩越多行越多行通常把子句放到一个通常把子句放到一个单单独的行独的行用用Tab或或缩缩排来提高排来提高语语句的可句的可读读性性书 写 SQL 语 句SQL 语句不区分大小写.选选 择择 所所 有有 的的 列列 DEPTNO DNAME LOC-10 ACCOUNTING NEW YORK 20 RESEARCH DALLAS 30 SALES CHICAGO 40 OPERATIONS BOSTONSQL SELECT*FROM dept;选 择 所 有 的 列 DEPTNO DNAME 选择选择指定的列指定的列SQLselect deptno,loc from dept;DEPTNO LOC-10 NEW YORK 20 DALLAS 30 CHICAGO 40 BOSTON选择指定的列SQLselect deptno,loc fr列列标题标题(字段字段)的默的默认显认显示示默默默默认对齐认对齐认对齐认对齐方式方式方式方式左左左左:日期与字符数据日期与字符数据日期与字符数据日期与字符数据右右右右:数字数据数字数据数字数据数字数据默默默默认显认显认显认显示示示示:大写大写大写大写列标题(字段)的默认显示默认对齐方式使用算使用算术术表达式表达式 在使用在使用在使用在使用SELECTSELECT语语语语句句句句时时时时,对对对对于数字于数字于数字于数字类类类类型和日期型和日期型和日期型和日期类类类类型数据都可以用算型数据都可以用算型数据都可以用算型数据都可以用算术术术术运运运运算符建立算算符建立算算符建立算算符建立算术术术术表达式表达式表达式表达式运算符运算符描述描述+加加-减减*乘乘/除除()括号括号使用算术表达式 在使用SELECT语句时,对于数字SQL SELECT ename,sal,sal+300 FROMemp;ENAME SAL SAL+300-KING 5000 5300BLAKE 2850 3150CLARK 2450 2750JONES 2975 3275MARTIN 1250 1550ALLEN 1600 1900.14 rows selected.SQL SELECT ename,sal,sal+30SQL SELECT ename,sal,2*(sal+300)FROM emp;ENAME SAL 2*(SAL+300)-KING 5000 10600BLAKE 2850 6300CLARK 2450 5500JONES 2975 6550MARTIN 1250 3100ALLEN 1600 3800.14 rows selected.SQL SELECT ename,sal,2*(sal使使 用用 空空 值值 表中的某个字段没有表中的某个字段没有值值叫做空叫做空值值,空空值值不等于字符串中的空格也不是不等于字符串中的空格也不是零零值值,是一种不确定的是一种不确定的值值SQL SELECT ename,job,comm FROM emp;ENAME JOB COMM-KING PRESIDENTBLAKE MANAGER.TURNER SALESMAN 0.14 rows selected.使 用 空 值 表中的某个字段没有值叫做空值,空值不算算术术表达式中如果有表达式中如果有NULL值则值则得出的得出的结结果也果也为为NULL值值SQL select ename NAME,12*sal+comm 2 from emp 3 WHERE ename=KING;NAME 12*SAL+COMM-KING算术表达式中如果有NULL值则得出的结果也为NULL值SQL改改改改变变变变列列列列标题标题标题标题的的的的显显显显示示示示(别别别别名名名名)作用作用作用作用:对对对对列列列列标题标题标题标题重新命名重新命名重新命名重新命名 简简简简化列化列化列化列标题显标题显标题显标题显示示示示 列列列列标题标题标题标题中有运算符中有运算符中有运算符中有运算符时时时时,重新命名列重新命名列重新命名列重新命名列标题标题标题标题,可可可可读读读读性更性更性更性更强强强强 希望希望希望希望显显显显示特殊字符于列示特殊字符于列示特殊字符于列示特殊字符于列标题标题标题标题中中中中时时时时也要改也要改也要改也要改变变变变列列列列标题标题标题标题 对选择对选择对选择对选择出的出的出的出的结结结结果中果中果中果中,合并合并合并合并连连连连接两个列接两个列接两个列接两个列值值值值且改且改且改且改变变变变列列列列标题标题标题标题方法方法方法方法:紧跟列名后面紧跟列名后面紧跟列名后面紧跟列名后面,并在中间加一个空格并在中间加一个空格并在中间加一个空格并在中间加一个空格,结果显示都是大写结果显示都是大写结果显示都是大写结果显示都是大写 列名和别名之间加入一个列名和别名之间加入一个列名和别名之间加入一个列名和别名之间加入一个AS,AS,结果显示也是大写结果显示也是大写结果显示也是大写结果显示也是大写 列名和别名之间一个空格列名和别名之间一个空格列名和别名之间一个空格列名和别名之间一个空格,并且别名用双引号括起来并且别名用双引号括起来并且别名用双引号括起来并且别名用双引号括起来改变列标题的显示(别名)作用:方法:改改变变列列标题标题的的显显示示(别别名名)SQL SELECT ename AS name,sal salary FROM emp;NAME SALARY-SQL SELECT ename Name,sal*12 Annual Salary“FROM emp;Name Annual Salary-SQL SELECT ename name,sal salary FROM emp;NAME SALARY-改变列标题的显示(别名)SQL SELECT ename 使用合并操作符使用合并操作符合并列或字符数据合并列或字符数据合并列或字符数据合并列或字符数据,用两个用两个用两个用两个竖线竖线竖线竖线来表示来表示来表示来表示(|)(|)SQL SELECT ename|job AS Employees“FROM emp;Employee-KINGPRESIDENTBLAKEMANAGERCLARKMANAGERJONESMANAGERMARTINSALESMANALLENSALESMAN.14 rows selected.使用合并操作符合并列或字符数据,用两个竖线来表示(|)SQ重复行重复行默默认认情况下情况下,选择显选择显示的是所有的行,包括重复的行示的是所有的行,包括重复的行.SQL SELECT deptno FROM emp;DEPTNO-10 30 10 20.14 rows selected.重复行默认情况下,选择显示的是所有的行,包括重复的行.SQL删删除重复行除重复行通通过过在在选择选择的列的列标题标题里加入一个里加入一个DISTINCT可以去掉重复行可以去掉重复行SQL SELECT DISTINCT deptno 2 FROM emp;DEPTNO-10 20 30 删除重复行通过在选择的列标题里加入一个DISTINCT可以去SQL与与SQL*Plus的交互的交互SQL*PlusSQL*PlusSQL StatementsSQL StatementsBufferBufferSQL StatementsSQL StatementsServerQuery ResultsQuery ResultsSQL*PlusSQL*Plus Commands CommandsFormatted ReportFormatted ReportSQL与SQL*Plus的交互SQL*PlusSQL StaSQLSQLstatementsstatementsSQL SQL 一个语言一个语言一个语言一个语言 ANSIANSI标准标准标准标准 关键字不能缩写关键字不能缩写关键字不能缩写关键字不能缩写 SqlSql语句能对数据库里面语句能对数据库里面语句能对数据库里面语句能对数据库里面的数据与表的定义进行操的数据与表的定义进行操的数据与表的定义进行操的数据与表的定义进行操作作作作SQL*PlusSQL*Plus 一个环境一个环境一个环境一个环境 OracleOracle所有所有所有所有 关键字能缩写关键字能缩写关键字能缩写关键字能缩写 Sql*plusSql*plus命令不能对数据命令不能对数据命令不能对数据命令不能对数据库数据进行操作库数据进行操作库数据进行操作库数据进行操作SQLSQLbufferbufferSQL*PlusSQL*PluscommandscommandsSQL*PlusSQL*PlusbufferbufferSQL 语句与语句与SQL*Plus命令命令SQLSQLSQL*PlusSQL*PlusSQL 语句与SSQL*PLUS是一种工具是一种工具登登登登录录录录SQL*PLUSSQL*PLUS描述表描述表描述表描述表结结结结构构构构编辑输编辑输编辑输编辑输入的入的入的入的SQLSQL命令命令命令命令执执执执行行行行输输输输入的入的入的入的SQLSQL命令命令命令命令保存保存保存保存SQLSQL命令到文件中命令到文件中命令到文件中命令到文件中执执执执行文件中的行文件中的行文件中的行文件中的SQLSQL命令命令命令命令SQL*PLUS是一种工具登录SQL*PLUS从从从从 Windows Windows 环环环环境境境境 从命令行从命令行从命令行从命令行:sqlplus sqlplus usernameusername/password password databasedatabase登登登登录录录录 SQL*Plus SQL*Plus从 Windows 环境登录 SQL*Plus显显示表的示表的结结构构使用使用SQL*PLUS的的DESCRIBE命令来查看表结构命令来查看表结构DESCRIBE tablenameSQL DESCRIBE deptName Null?Type-DEPTNO NOT NULL NUMBER(2)DNAME VARCHAR2(14)LOC VARCHAR2(13)显示表的结构使用SQL*PLUS的DESCRIBE命令来查看SQL*PLUS的的编辑编辑命令命令APPEND textCHANGE/old/newCHANGE/text/CLEAR BUFFERDELDEL nDEL m nINPUTINPUT textLISTLIST nLIST m n RUNnn text0 textSQL*PLUS的编辑命令APPEND textSQL*Plus 文件命令文件命令SAVE filenameGET filenameSTART filename filenameEDIT filenameSPOOL filenameSQL*Plus 文件命令SAVE filename汇总汇总学完本章之后,我学完本章之后,我学完本章之后,我学完本章之后,我们们们们可以掌握可以掌握可以掌握可以掌握:SQL SELECTSQL SELECT语语语语句的作用句的作用句的作用句的作用执执执执行一个基本的行一个基本的行一个基本的行一个基本的 SELECT SELECT语语语语句句句句SQLSQL语语语语句与句与句与句与 SQL*Plus SQL*Plus 命令的差命令的差命令的差命令的差别别别别汇总学完本章之后,我们可以掌握:
展开阅读全文