oracle SQL语法大全

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

关系数据库标准语言SQL/1SQL语言初步数据查询语句数据库更新语句数据定义语句数据控制语句什麽是SQL?SQL:Structuredquerylanguage功能:查询、操纵、定义、控制特点:1、一体化;2、两种使用方式,统一的语法结构;方式一、联机交互使用方式;方式二、嵌入式。3、高度非过程化;4、语言简洁,易学易用。SQL支持关系数据库三级模式基本表:独立存在的表。每个基表对应一个存储文件,一个表可带若干索引。存储文件+索引=内模式视图:是一个虚表。数据库中仅存视图定义,不存对应的数据。SQL的三级模式外模式模式内模式Storefile1Storefile2Storefile3Storefile4Basetable1Basetable2Basetable3Basetable4View1View2SQL用户SQL命令的种类DDL,数据定义语言DML,数据操纵语言DQL,数据查询语言DCL,数据控制语言数据管理命令事务性控制命令DDL,数据定义语言用户创建或重新构建数据库的语言CREATEINDEXALTERINDEXDROPINDEXCREATETABLEALTERTABLEDROPTABLEDML,数据操纵语言用于在关系数据库对象中操纵数据INSERTUPDATEDELETEDQL,数据查询语言对数据库中的信息寻找和定位SELECTDCL,数据控制语言用于创建与用户访问相关的对象,也控制着用户的权限分配ALTERPASSWORD改变口令GRANT为用户授予特权REVOKE从用户处收回特权数据管理命令审计和分析对数据库的操作,并可分析系统的执行过程STARTAUDITSTOPAUDIT事务性控制命令用户管理数据库的事务命令COMMIT用于保护数据库的事务ROLLBACK用于撤消数据库的事务SAVEPOINT创建一组事务中的撤消点SETTRANSACTION给事务命名数据库中的表结构数据库中的表数据和基本数据类型•数据库中的表表:字段、记录、列、主键customer_tblOrder_tblProducts_tblProd_idProd_desccost112candy1.35113plastic1.04Products_tbl记录列(字段)主键数据和基本数据类型数据是存储在数据库中的信息集合。数据类型用于给特定的数据提供规则。基本数据类型包括:字符串数字日期和时间值字符串定长字符串:CHARACTER(n)变长字符串:CHARACTERVARYING(n)数字值BIT(n)BITVERYING(n)DECIMAL(n,n)INTEGERSMALLINTFLOAT(p)REAL(s)DOUBLEPRECISION(p)日期和时间值DATE(YEAR,MONTH,DAY)TIME(HOUR,MINUTE,SECOND)INTERVALTIMESTAMPNULL值:为空。数据查询语句语法:SELECT[*|all|column1,column2]FROMtable1[,table2][WHEREcondition][GROUPBYcolumn1][ORDERBYcolumn2(asc,desc)]按列取值相等的原则进行分组按列值进行排序例1:SELECT*FROMproducts_tblWHEREcost5例2:SELECTprod_desc,costFROMproducts_tblWHEREprod_id=‘119’例3:多表查询SELECTemployee_tbl.emp_name,employee_pay_tbl.positionFROMemployee_tbl,employee_pay_tblWHEREemployee_tbl.emp_id=employee_pay_tbl.emp_idSQL中操作符的使用定义:操作符是保留的字或字符,主要用于比较和算术运算。分类:比较操作符,逻辑操作符和算术运算符。1、比较操作符包括:=,,,,=,=。注意比较双方的数据类型。2、算术运算符包括:+,-,*,/等。与数学运算规则一致。2、逻辑操作符ISNULL(是否为空)BETWEEN(在某两个值之间)IN(一系列值中)LIKE(相似值的比较)EXITS(是否存在符合条件的数据)UNIQUE(是否唯一)ALL/ANY(一组数据的所有/其中的任何一个)AND/OR(逻辑与/或)ISNULL/ISNOTNULLWHEREsalaryISNULL工资为空值。WHEREsalary=NULL工资中含有NULL字符。例:SELECTemp_id,emp_nameFROMemployee_tblWHEREemp_phoneISNULLBETWEENWHEREsalaryBETWEEN200and300工资在200到300之间,包括200和300。INWHEREsalaryIN(200,300,400)工资必须是200,300,400之中的值。LIKE使用匹配符将一个值同其相似的值比较。匹配符包括:-代表一个字符。%代表多个字符。如:WHEREsalaryLIKE‘-00’查找‘00’作为后两位数的值。WHEREsalaryLIKE‘200%’查找‘200’作为前三位数的值。EXISTS查询在指定表中是否存在一行符合某种条件的数据。WHEREEXISTS(SELECTemployee_idFROMemployee_tblWHEREemployee_id=‘3333’)UNIQUE在特定的表中搜索每一行是否唯一。WHEREUNIQUE(SELECTsalaryFROMemployee_tblWHEREemployee_id=‘3333’)测试满足条件的工资是否有重复数据。ALL/ANY与某个数据集中所有数据/任何一个进行比较。WHEREsalaryall(SELECTsalaryFROMemployee_tblWHEREcity=‘INDIAN’)AND/ORAND连接的条件必须都满足。OR连接的条件至少满足一个。如:SELECT*FROMproducts_tblWHEREcost10andcost30如:SELECT*FROMproducts_tblWHEREprod_id=‘7725’orprod_id=‘2345’库函数函数通常是列名或表达式相连系的命令。1、统计函数2、字符函数3、算术函数1、统计函数统计函数:用于提供统计信息,如:累加、总和、平均值。主要的统计函数:COUNT:统计行数或不为NULL的列数。SUM:求和。MAX:求最大值。MIN:求最小值。AVG:求平均值。COUNT语法:COUNT[(*)|(DISTINCT|ALL|]COLUMNNAME)注意:DISTINCT统计唯一的行;DISTINCT不能用于COUNT(*),只能用于COUNT(column_name)举例:SELECTCOUNT(*)FROMEMPLOYEE_TBL统计雇员表中所有行数SELECTCOUNT(EMP_ID)FROMEMPLOYEE_TBL统计所有雇员身份证号SELECTCOUNT(DISTINCTSALARY)FROMEMPLOYEE_PAY_TBL统计唯一行数SUM:仅用于数字类型。语法:SUM([DISTINCT]COLUMNNAME)举例:SELECTSUM(SALARY)FROMEMPLOYEE_PAY_TBL计算工资总和SELECTSUM(DISTINCTSALARY)FROMEMPLOYEE_PAY_TBL计算没有重复工资总和AVG:确定一组数据的平均值语法:AVG([DISTINCT]COLUMNNAME)举例:SELECTAVG(SALARY)FROMEMPLOYEE_PAY_TBL计算工资的平均值SELECTAVG(DISTINCTSALARY)FROMEMPLOYEE_PAY_TBL计算唯一的工资平均值MAX和MIN语法:MAX([DISTINCT]COLUMNNAME)MIN([DISTINCT]COLUMNNAME)举例:SELECTMAX(SALARY)FROMEMPLOYEE_PAY_TBL计算最高的工资SELECTMAX(DISTINCTSALARY)FROMEMPLOYEE_PAY_TBL计算最高的工资例:表DTUDENT_TBL数学平均值总成绩最高值语文成绩最低值数学成绩总和表中的数据行数s_idnamemathscomptotal9810021王明67801479820201李春56721289810089赵芳78901689820067顾青53581119810125雷蕾80691491.SELECTAVG(maths)FROMSTUDENT_TBL2.SELECTMAX(total)FROMSTUDENT_TBL3.SELECTMIN(comp)FROMSTUDENT_TBL4.SELECTSUM(maths)FROMSTUDENT_TBL5.SELECTCOUNT(*)FROMSTUDENT_TBL2、字符函数upper(characterstring):将指定字符串中的小写字母换成大写字母。lower(characterstring):将指定字符串中的大写字母换成小写字母。substr(colunmname,startposition,length)从指定字符串中取字符。例:SELECTUPPER(CITY)FROMEMPLOYEE_TBLSELECTLOWER(CITY)FROMEMPLOYEE_TBLSELECTSUBSTRING(EMP_ID,1,3)FROMEMPLOYEE_TBLSELECTSUBSTRING(EMP_ID,5,3)FROMEMPLOYEE_TBL3、算术函数abs(绝对值)、sin、cos、tan、exp(指数)、sqrt(开方)、power(幂)语法:函数名(表达式)例:SELECTSQRT(MATHS)*10FROMSTUDENT_TBL数据库更新语句INSERT给表填充数据UPDATE更新已存在的数据DELETE删除表中的数据INSERT给表填充数据语法:INSERTINTOtable_nameVALUES(value1,value2,…...)例:products_tbl:prod_idvarchar(10)prod_descvarchar(25)costnumber(6,2)输入数据:INSERTINTOproducts_tblVALUES(‘7725’,’LEATHER’,26.99)UPDATE更新已存在的数据语法:UPDATEtable_nameSETcolumn_name=‘value’[WHEREcondition]例:UPDATEproducts_tblSETprod_id=‘1001’WHEREprod_desc=‘coat’DELETE删除表中的数据语法:DELETEFROMtable_name[WHEREcondition]例:DELETEFROMproducts_tblWHEREprod_ID=‘1001’SQL数据定义语句数据定义功能包括:基表、视图和索引的定义。一、创建与删除基表二、创建与删除视图三、索引的建立与删除一、创建与删除基表创建基表语法:CREATETABLEtable_name(col_namecol_propertiesconstraint……)table_name表名col_name列名创建临时表:CREATETABLE#table_name(col_namecol_propertiesconstraint……)删除一张表就是删除一张表定义及其所有与之相关连的数据、索引、触发器、约束和许可。语法:DROPTABLEdatabasename.table_name例:DROPTABLE

1 / 67
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功