oracle-PLSQL-语法详细手册

上传人:ren****ao 文档编号:161207906 上传时间:2022-10-13 格式:DOC 页数:79 大小:238.52KB
收藏 版权申诉 举报 下载
oracle-PLSQL-语法详细手册_第1页
第1页 / 共79页
oracle-PLSQL-语法详细手册_第2页
第2页 / 共79页
oracle-PLSQL-语法详细手册_第3页
第3页 / 共79页
资源描述:

《oracle-PLSQL-语法详细手册》由会员分享,可在线阅读,更多相关《oracle-PLSQL-语法详细手册(79页珍藏版)》请在装配图网上搜索。

1、SQL PL/SQL语法手册第一部分 SQL语法部分Create table 语句语句: CREATE TABLE schema.table_name ( column datatype DEFAULT expr column_constraint . | table_constraint , column datatype DEFAULT expr column_constraint . | table_constraint .) PCTFREE integer PCTUSED integer INITRANS integer MAXTRANS integer TABLESPACE tabl

2、espace STORAGE storage_clause RECOVERABLE | UNRECOVERABLE PARALLEL ( DEGREE integer | DEFAULT INSTANCES integer | DEFAULT ) | NOPARALLEL CACHE | NOCACHE | CLUSTER cluster (column , column.) ENABLE enable_clause | DISABLE disable_clause .AS subquery表是Oracle中最重要的数据库对象,表存储一些相似的数据集合,这些数据描述成若干列或字段.create

3、 table 语句的基本形式用来在数据库中创建容纳数据行的表.create table 语句的简单形式接收表名,列名,列数据类型和大小.除了列名和描述外,还可以指定约束条件,存储参数和该表是否是个cluster的一部分.Schema 用来指定所建表的owner,如不指定则为当前登录的用户.Table_name 用来指定所创建的表名,最长为30个字符,但不可以数字开头(可为下划线),但不可同其它对象或Oracle的保留字冲突. Column 用来指定表中的列名,最多254个.Datatype 用来指定列中存储什么类型的数据,并保证只有有效的数据才可以输入.column_constraint 用来

4、指定列约束,如某一列不可为空,则可指定为not null.table_constraint 用来指定表约束,如表的主键,外键等.Pctfree 用来指定表中数据增长而在Oracle块中预留的空间. DEFAULT为10%,也就是说该表的每个块只能使用90%,10%给数据行的增大时使用.Pctused 用来指定一个水平线,当块中使用的空间低于该水平线时才可以向该中加入新数据行.Parallel 用来指定为加速该表的全表扫描可以使用的并行查询进程个数.Cache 用来指定该表为最应该缓存在SGA数据库缓冲池中的候选项.Cluster 用来指定该表所存储的 cluster.Tablespace 用来

5、指定用数据库的那个分区来存储该表的数据.Recoverable|Unrecoverable 用来决定是否把对本表数据所作的变动写入Redo 文件.以恢复对数据的操作.As 当不指定表的各列时,可利用As子句的查询结果来产生数据库结构和数据.例: 1) create table mytab1e(mydec decimal, myint inteter) tablespace user_data pctfree 5 pctused 30; 2) create table mytable2 as ( select * from mytable1);create sequence语句语句: CREAT

6、E SEQUENCE schema.sequence_nameINCREMENT BY integer START WITH integer MAXVALUE integer | NOMAXVALUE MINVALUE integer | NOMINVALUE CYCLE | NOCYCLE CACHE integer | NOCACHE ORDER | NOORDER序列用来为表的主键生成唯一的序列值.Increment by 指定序列值每次增长的值Start with 指定序列的第一个值Maxvalue 指定产生的序列的最大值Minvalue 指定产生的序列的最小值Cycle 指定当序列值

7、逵到最大或最小值时,该序列是否循环.Cache 指定序列生成器一次缓存的值的个数Order 指定序列中的数值是否按访问顺序排序.例: 1) create sequence myseq increment by 4 start with 50 maxvalue 60 minvalue 50 cycle cache 3;2) sql create sequence new_s; sqlinsert into new (new_id,last_name,first_name) values(new_s.nextval,daur,permit);create view语句 语句: CREATE OR

8、REPLACE FORCE | NOFORCE VIEW schema.view_name (alias ,alias.) AS subquery WITH CHECK OPTION CONSTRAINT constraint视图实际上是存储在数据库上旳 select语句.每次在sql语句中使用视图时,表示该视图的select语句就用来得到需要的数据.Or replace 创建视图时如果视图已存在,有此选项,新视图会覆盖旧的 视图.Force 如有此选项,当视图基于的表不存在或在该模式中没有创建视图的权限时,也可以建立视图.As subquery 产生视图的select查询语句With che

9、ck option 如果视图是基于单表的且表中所有的非空列都包含在视图中时,该视图可用于insert和update语句中,本 选项保证在每次插入或更新数据后,该数据可以在视 图中查到例:create or place view new_v as select substr(d.d_last_name,1,3), d.d_lastname,d.d_firstname,b.b_start_date,b.b_location from new1 d, new2 b where d.d_lastname=b.b_lastname;INSERT语句:语法INSERT INTO schema.table

10、| view | subquery dblink (column , column .) VALUES (expr , expr .) | subquery WHERE condition插入单行使用VALUES关键词为新行的每一列指定一个值.如果不知道某列的值,可以使用NULL关键词将其值设为空值(两个连续的逗号也可以表示空值,也可使用NULL关键词)插入一行时试图为那些NOT NULL的列提供一个NULL值,会返回错误信息.举例:插入一条记录到DEPARTMENT表中INSERT INTO DEPARTMENT (DEPARTMENT_ID,NAME,LOCATION_ID)VALUES

11、(01,COMPUTER,167)插入多行将SELECT语句检索出来的所有数据行都插入到表中.这条语句通常在从一个表向另一个表快速复制数据行.举例:INSERT INTO ORDER_TEMPSELECT A.ORDER_ID,B.ITEM_ID,C.NAME,E.FIRST_NAME|.|E.LAST_NAME, A.ORDER_DATE,A.SHIP_DATE,D.DESCRIPTION,B.ACTUAL_PRICE, B.QUANTITY,B.TOTAL FROM SALES_ORDER A, ITEM B, CUSTOMER C, PRODUCT D, EMPLOYEE E WHERE

12、 MONTHS_BETWEEN(TO_DATE(A.ORDER_DATE),TO_DATE(01-7月-91)0 AND A.CUSTOMER_ID=C.CUSTOMER_ID AND C.SALESPERSON_ID=E.EMPLOYEE_ID AND A.ORDER_ID=B.ORDER_ID AND B.PRODUCT_ID=D.PRODUCT_ID从其它表复制数据:要快速地从一个表向另一个尚不存在的表复制数据,可以使用CREATE TABLE语句定义该表并同时将SELECT语句检索的结果复制到新表中.CREATE TABLE EMPLOYEE_COPY AS SELECT * FROM

13、 EMPLOYEEUPDATE语句:语法UPDATE schema.table | view | subquerydblink alias SET (column , column .) = (subquery) | column = expr | (subquery) , (column , column .) = (subquery) | column = expr | (subquery) . WHERE conditionUPDATE语句更新所有满足WHERE子句条件的数据行.同样,该语句可以用SELECT语句检索得到.但SELECT必须只检索到一行数据值.否则报错.而且每更新一行数据

14、,均要执行一次SELECT语句.举例:UPDATE EMPLOYEE_COP SET SALARY= SALARY-400 WHERE TO_NUMBER(TO_CHAR(HIRE_DATE,YYMMDD)850101 UPDATE ITEM_COP A SET A.ACTUAL_PRICE= ( SELECT B.LIST_PRICE FROM PRICE B,SALES_ORDER C WHERE A.PRODUCT_ID=B.PRODUCT_ID AND A.ORDER_ID=C.ORDER_ID AND TO_NUMBER(TO_CHAR(C.ORDER_DATE,YYYYMMDD)

15、BETWEEN TO_NUMBER(TO_CHAR(B.START_DATE,YYYYMMDD) AND NVL(TO_NUMBER(TO_CHAR(END_DATE,YYYYMMDD),29991231) )DELETE语句:语法DELETE FROM schema.table | viewdblink alias WHERE conditionDELETE语句删除所有满足WHERE子句条件的数据行.举例:DELETE FROM itemWHERE ORDER_ID=510TRUNCATE语句:语法TRUNCATE schema.table各类Functions:转换函数:函數:TO_CHA

16、R语法: TO_CHAR(number,format)用途:将一个数值转换成与之等价的字符串.如果不指定格式,将转换成最简单的字符串形式.如果为负数就在前面加一个减号.Oracle为数值提供了很多格式,下表列出了部分可接受的格式:元素描述示例值结果9返回指定位数的数值,前面为0,显示为空格99999784-578123456745.895 784 -578# 46插入小数点9999.9978445.3482784.0045.35在结果串的指定位置插入逗号9,999,99978412345670.44 784 1,234,567 0$返回值前面加一个元符号$99,999784-578 $784

17、-$578B结果的整数部分如果是0,就显示成空格B9999.97840.44 784.0 .4S返回 有正负号的数值S9999784+784EEEE以科 计数法表示数值9.9EEEE450.0666 4.5E+01 6.7E-02函數:TO_CHAR语法: TO_CHAR(date,format)用途:将按format参数指定的格式将日期值转换成相应的字符串形式.同样,Oracle提供许多的格式模型,用户可以用它们的组合来表示最终的输出格式.唯一限制就是最终的掩码不能超过22个字符.下表列出了部分日期格式化元素.Oracle为数值提供了很多格式,下表列出了部分可接受的格式:格式意义D用数字表示

18、星期几(1,2,3,4,5,6,7)DY用三个字符表示星期几的缩写形式(MON)DAY星期几的完整表示(MONDAY)DD用数字表示一月中的几号DDD用数字表示年份中的天数W一月中的星期数WW一年中的星期数MM用数字表示月数MON用三个字母表示月的缩写(APR)MONTH月的完整英文表示(FEBRUARY)Y年份中的最后一个数字(9)YY年份中的最后二个数字(99)YYY年份中的最后三个数字(999)YYYY年份用四个数字表示(1999)YEAR年份的字母全部拼写(NINETEEN-NINETY-NINE)AM或PM午前或午后表示符HH用小时表示日期MI分钟表示小时SS秒钟表示分钟SSSS自午

19、夜以来的秒数(这个数字经常在0-86399之间)函數:TO_DATE语法: TO_DATE(string,format)用途:根据给定的格式将一个字符串转换成Oracle的日期值.该函数的主要用途是用来验证输入的日期值.在应用程序中,用户必须验证输入日期是否有效,如月份是否在112之间和日期中的天数是否在指定月份的天数内.函數:TO_NUMBER语法: TO_NUMBER(string,format)用途:该函数将一个字符串转换成相应的数值.对于简单的字符串转换数值(例如几位数字加上小数点).格式是可选的.日期函数函數:ADD_MONTHS语法: ADD_MONTHS(date,number)

20、用途:在日期date上加指定的月数,返回一个新日期.如果给定为负数,返回值为日期date之前几个月的日期.number应当是个整数,如果是小数,正数被截为小于该数的最大整数,负数被截为大于该数的最小整数.例如: SELECT TO_CHAR(ADD_MONTHS(sysdate,1), DD-MON-YYYY) Next month FROM dualNext month-19-FEB-2000函數:LAST_DAY语法: LAST_DAY(date)用途:返回日期date所在月份的最后一天的日期.例如: SELECT SYSDATE, LAST_DAY(SYSDATE) Last, LAST

21、_DAY(SYSDATE) - SYSDATE Days Left FROM DUALSYSDATE Last Days Left- - -19-JAN-00 31-JAN-00 12函數:MONTHS_BETWEEN语法: MONTHS_BETWEEN(date1,date2)用途:返回两个日期之间的月份.如果两个日期月份内的天数相同(或者都是某个月的最后一天),返回值是整数.否则,返回值是小数,每于1/31月来计算月中剩余天数.如果第二个日期比第一个日期还早,则返回值是负数.例如: SELECT MONTHS_BETWEEN(TO_DATE(02-02-1992, MM-DD-YYYY),

22、 TO_DATE(01-01-1992, MM-DD-YYYY) Months FROM DUAL Months - 1.03225806 SELECT MONTHS_BETWEEN(TO_DATE(02-29-1992, MM-DD-YYYY), TO_DATE(01-31-1992, MM-DD-YYYY) Months FROM DUAL Months- 1函數:NEXT_DAY语法: NEXT_DAY(date,day)用途:该函数返回日期date指定若天后的日期.注意:参数day必须为星期,可以星期几的英文完整拼写,或前三个字母缩写,或数字1,2,3,4,5,6,7分别表示星期日到星

23、期六.例如,查询返回本月最后一个星期五的日期.例如: SELECT NEXT_DAY(last_day(sysdate)-7),FRIDAY) FROM dualNEXT_DAY(-28-JAN-00函數:ROUND语法: NEXT_DAY(date,format)用途:该函数把一个日期四舍五入到最接近格式元素指定的形式.如果省略format,只返回date的日期部分.例如,如果想把时间(24/01/00 14:58:41)四舍五入到最近的小时.下表显示了所有可用格式元素对日期的影响.Format ElementResultSS24/01/00 14:58:41MI24/01/00 14:59

24、:00HH24/01/00 15:00:00DD25/01/00 00:00:00MM01/02/01 00:00:00YY01/01/00 00:00:00CC01/01/00 00:00:00例如: SELECT to_char(ROUND(sysdate,HH),DD-MON-YY HH24:MI:SS) FROM dualTO_CHAR(ROUND(SYSDATE,HH),DD-MON-YYHH24:MI:SS)-24-JAN-00 15:00:00函數:TRUNC语法: TRUNC(date,format)用途:TRUNC函数与ROUND很相似,它根据指定的格式掩码元素,只返回输入日

25、期用户所关心的那部分,与ROUND有所不同,它删除更精确的时间部分,而不是将其四舍五入.例如: SELECT TRUNC(sysdate) FROM dualTRUNC(SYS-24-JAN-00FLOOR函数:求两个日期之间的天数用;select floor(sysdate - to_date(20080805,yyyymmdd) from dual;字符函数函數:ASCII语法:ASCII(character)用途:返回指定字符的ASCII码值.如果为字符串时,返回第一个字符的ASCII码值.例如: SELECT ASCII(Z) FROM dualASCII(Z)- 90函數:CHR语法

26、:CHR(number)用途:该函数执行ASCII函数的反操作,返回其ASCII码值等于数值number的字符.该函数通常用于向字符串中添加不可打印字符.例如: SELECT CHR(65)|BCDEF FROM dualCHR(65-ABCDEF函數:CONCAT语法:CONCAT(string1,string2)用途:该函数用于连接两个字符串,将string2跟在string1后面返回,它等价于连接操作符(|).例如: SELECT CONCAT(This is a, computer) FROM dualCONCAT(THISISA,-This is a computer它也可以写成这样

27、: SELECT This is a| computer FROM dualTHISISA|COMPUT-This is a computer这两个语句的结果是完全相同的,但应尽可能地使用|操作符.函數:INITCAP语法:INITCAP(string)用途:该函数将字符串string中每个单词的第1个字母变成大写字母,其它字符为小写字母.例如: SELECT INITCAP(first_name|.|last_name) FROM employee WHERE department_id=12INITCAP(FIRST_NAME|.|LAST_N-Chris.AlbertsMatthew.F

28、isherGrace.RobertsMichael.Douglas函數:INSTR语法:INSTR(input_string,search_string,n,m)用途:该函数是从字符串input_string的第n个字符开始查找搜索字符串的第m次出现,如果没有找到搜索的字符串,函数将返回0.如果找到,函数将返回位置.例如: SELECT INSTR(the quick sly fox jumped over the lazy brown dog,the,2,1) FROM dualINSTR(THEQUICKSLYFOXJUMPEDOVERTHELAZYBROWNDOG,THE,2,1)- 3

29、1函數:INSTRB语法:INSTRB(input_string,search_string,n,m)用途:该函数类似于INSTR函数,不同之处在于INSTRB函数返回搜索字符串出现的字节数,而不是字符数.在NLS字符集中仅包含单字符时,INSTRB函数和INSTR函数是完全相同的.函數:LENGTH语法:LENGTH(string)用途:该函数用于返回输入字符串的字符数.返回的长度并非字段所定义的长度,而只是字段中占满字符的部分.以列实例中,字段first_name定义为varchar2(15).语法: SELECT first_name,LENGTH(first_name) FROM em

30、ployeeFIRST_NAME LENGTH(FIRST_NAME)- -JOHN 4KEVIN 5函數:LENGTHB语法:LENGTHB(string)用途:该函数用于返回输入字符串的字节数.对于只包含单字节字符的字符集来说LENGTHB函数和LENGTH函数完全一样.函數:LOWER语法:LOWER(string)用途:该函数将字符串string全部转换为小写字母,对于数字和其它非字母字符,不执行任何转换.函數:UPPER语法:UPPER(string)用途:该函数将字符串string全部转换为大写字母,对于数字和其它非字母字符,不执行任何转换.函數:LPAD语法:LPAD(strin

31、g,length,set)用途:在字符串string的左边加上一个指定的字符集set,从而使串的长度达到指定的长度length.参数set可以是单个字符,也可以是字符串.如果string的长度小于length时,取string字符串的前length个字符.语法: SELECT first_name,LPAD(first_name,20, ) FROM employeeFIRST_NAME LPAD(FIRST_NAME,20,)- -JOHN JOHNKEVIN KEVIN函數:RPAD语法:RPAD(string,length,set)用途:在字符串string的右边加上一个指定的字符集se

32、t,从而使串的长度达到指定的长度length.参数set可以是单个字符,也可以是字符串.如果string的长度小于length时,取string字符串的前length个字符.例如: SELECT first_name,rpad(first_name,20,-) FROM employeeFIRST_NAME RPAD(FIRST_NAME,20,-)- -JOHN JOHN-KEVIN KEVIN-函數:LTRIM语法:LTRIM(string,set)用途:该函数从字符串的左边开始,去掉字符串set中的字符,直到看到第一个不在字符串set中的字符为止.例如: SELECT first_nam

33、e,ltrim(first_name,BA) FROM employee WHERE first_name=BARBARA FIRST_NAME LTRIM(FIRST_NAM- -BARBARA RBARA函數:RTRIM语法:RTRIM(string,set)用途:该函数从字符串的右边开始,去掉字符串set中的字符,直到看到第一个不在字符串set中的字符为止.具有NULL值的字段不能与具有空白字符的字段相比较.这是因为空白字符与NULL字符是完全不同的两种字符.该函数的另外一个用途是当进行字段连接时去掉不需要的字符.函數:SUBSTR语法:SUBSTR(string,start,lengt

34、h)用途:该函数从输入字符串中取出一个子串,从start字符处开始取指定长度的字符串,如果不指定长度,返回从start字符处开始至字符串的末尾.函數:REPLACE语法:REPLACE(string,search_set,replace_set)用途:该函数将字符串中所有出现的search_set都替换成replace_set字符串.可以使用该函将字符串中所有出现的符号都替换成某个有效的名字.如果不指定replace_set,则将从字符串string中删除所有的搜索字符串search_set.例如:SELECT REPLACE(abcdefbdcdabc,dsssdcdrd,abc,ABC)

35、FROM dualREPLACE(ABCDEFBDCDABC,-ABCdefbdcdABC,dsssdcdrd函數:TRANSLATE语法:TRANSLATE(string,search_set,replace_set)用途:该函数用于将所有出现在搜索字符集search_set中的字符转换成替换字符集replace_set中的相应字符.注意:如果字符串string中的某个字符没有出现在搜索字符集中.则它将原封不动地返回.如果替换字符集replace_set比搜索字符集search_set小,那么搜索字符集search_set中后面的字符串将从字符串string中删除.例如:SELECT TRA

36、NSLATE(GYK-87M,0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ, 9999999999xxxxxxxxxxxxxx) FROM dualTRANSL-xx-99x数值函数函數:ABS语法:ABS(number)用途:该函数返回数值number的绝对值.绝对值就是一个数去掉符号的那部分.函數:SQRT语法:SQRT(number)用途:该函数返回数值number的平方根,输入值必须大于等于0,否则返回错误.函數:CEIL语法:CEIL(number)用途:该函数返回大于等于输入值的下一个整数.函數:FLOOR语法:FLOOR(number)用途:该函数返回

37、小于等于number的最大整数.函數:MOD语法:MOD(n,m)用途:该函数返回n除m的模,结果是n除m的剩余部分.m,n可以是小数,负数.函數:POWER语法:POWER(x,y)用途:该函数执行LOG函数的反操作,返回x的y次方.函數:ROUND语法:ROUND(number,decimal_digits)用途:该函数将数值number四舍五入到指定的小数位.如果decimal_digits为0,则返回整数.decimal_digits可以为负数.函數:TRUNC语法:TRUNC(number,decimal_pluces)用途:该函数在指定的小数字上把一个数值截掉.如果不指定精度,函数

38、预设精度为0. decimal_pluces可以为负数.函數:SIGN语法:SIGN(number)用途:该函数返回number的符号,如果number为正数则返回1,为负数则返回-1,为0则返回0.函數:SIN语法:SIN(number)用途:该函数返回弧度number的正弦值.函數:SINH语法:SINH(number)用途:该函数返回number的返正弦值.函數:COS语法:COS(number)用途:该函数返回弧度number的三角余弦值.要用角度计算余弦,可以将输入值乘以0.01745转换成弧度后再计算.函數:COSH语法:COSH(number)用途:该函数返回输入值的反余弦值.函

39、數:TAN语法:TAN(number)用途:该函数返回弧度number的正切值.函數:TANH语法:TANH(number)用途:该函数返回数值number的反正切值.函數:LN语法:LN(number)用途:该函数返回number自然对数.函數:EXP语法:EXP(number)用途:该函数返回e(2.71828183)的number次方.该函数执行自然对数的反过程.函數:LOG语法:LOG(base,number)用途:该函数返回base为底,输入值number的对数.单行函数:单行函数中可以对任何数据类型的数据进行操作.函數:DUMP语法:DUMP(expression,format,s

40、tart,length)用途:该函数按指定的格式显示输入数据的内部表示.下表列出了有效的格式.格式代码描述8八进制10十进制16十六进制17单字符例如: SELECT DUMP(FARRELL,16) FROM dualDUMP(FARRELL,16)-Typ=96 Len=7: 46,41,52,52,45,4c,4c函數:GREATEST语法:GREATEST(list of values)用途:该函数返回列表中项的最大值.对数值或日期来说,返回值是最大值或最晚日期,如果列表中包含字符串,返回值是按字母顺序列表中的最后一项.例如: SELECT GREATEST(123,234,432,1

41、12) FROM dualGREATEST(123,234,432,112)- 432函數:LEAST语法:LEAST(list of values)用途:该函数返回列表中项的最小值.对数值或日期来说,返回值是最小值或最早日期,如果列表中包含字符串,返回值是按字母顺序列表中的第一项.例如: SELECT LEAST(sysdate,sysdate-10) FROM dualLEAST(SYS-10-JAN-00函數:NVL语法:NVL(expression,replacement_value)用途:如果表达式不为空值,函数返回该表达式的值,如果是空值,就返回用来替换的值.例如: SELECT

42、last_name, NVL(TO_CHAR(COMMISSION),NOT APPLICABLE) FROM employee WHERE department_id=30LAST_NAME NVL(TO_CHAR(COMMISSION),NOTAPPLICABLE)- -ALLEN 300WARD 500MARTIN 1400BLAKE NOT APPLICABLE多行函数组函数可以对表达式的所有值操作,也可以只对其中不同值进行操作,组函数的语法如下所示:functionDISTINCT|ALL expression如果既不指定DISTINCT,也不指定ALL,函数将对查询返回的所有数据行

43、进行操作.不能在同一个SELECT语句的选择列中同时使用组函数和单行函数.函數:AVG语法:AVG(DISTINCT|ALL expression)用途:对查询返回的数据行求平均值.例如: SELECT AVG(sal) Average FROM emp Average - 2073.21429函數:COUNT语法:COUNT(DISTINCT|ALL expression)用途:计算表达式的个数.要计算EMP表中雇员的个数.例如: SELECT COUNT(deptno) FROM empCOUNT(DEPTNO)- 14 SELECT COUNT(distinct deptno) FROM

44、 empCOUNT(DISTINCTDEPTNO)- 3函數:MAX语法:MAX(DISTINCT|ALL expression)用途:对查询返回的行集求最大值.如果有多个最大值,将所有均返回.要检索公司中最高工资的雇员.语法: SELECT ename,sal FROM emp WHERE sal=(select max(sal) FROM emp)ENAME SAL- -KING 5000函數:MIN语法:MIN(DISTINCT|ALL expression)用途:对查询返回的行集求最小值.如果有多个最小值,将所有均返回.例如: SELECT MIN(last_name) FROM em

45、ployeeMIN(LAST_NAME)-ADAMS函數:SUM语法:SUM(DISTINCT|ALL expression)用途:计算查询返回的所有非空数值的总和.如果返回的数据都是空值,则该函数也返回空值.例如: SELECT SUM(salary)Total FROM employee WHERE department_id=10 Total- 8750函數:VARIANCE语法:VARIANCE(DISTINCT|ALL expression)用途:该函数计算返回所有行的统计方差.例如: SELECT VARIANCE(salary) FROM employeeVARIANCE(SAL

46、ARY)- 973659.27伪列返回值Sequence.CURRVAL上一次由序列产生器产生的序列名值.只有在当前实例会话中从该序列选择过一次值,这个伪列才会有效.LEVEL查诣的深度,LEVEL适用于特殊的树查询.Sequence.NEXTVAL选择这个伪列将导致序列发生器返回该序列的下一个值.一旦选择了该值,它就不能被重用,因为以后的每次检索都将返回下一个值.ROWID这个伪列表示数据行确切的存储位置.ROWID的格式是一个三个16进制数的结构AAAAAAAA.BBBB.CCCC,这里AAAAAAAA表示数据库文件中包含该行的块号,BBBB是数据块内部的行号,而CCCC则是数据中的文件I

47、D.ROWNUM被检索数据行的序列号.SYSDATE当前日期和时间.UID当前用户的标识ID.USER用户登录进数据库的名字. TABLE: LOCATION 部门地址表 - - - LOCATION_ID NOT NULL NUMBER(3) 地址ID REGIONAL_GROUP VARCHAR2(20) 地址名 TABLE: DEPARTMENT 部门名称表 - - - DEPARTMENT_ID NOT NULL NUMBER(2) 部门ID NAME VARCHAR2(14) 部门名称 LOCATION_ID NUMBER(3) 地址ID(LOCATION.LOCATION_ID)

48、TABLE: JOB 工种表 - - - JOB_ID NOT NULL NUMBER(3) 工种ID FUNCTION VARCHAR2(30) 工种名称 TABLE: EMPLOYEE 雇员信息表 - - - EMPLOYEE_ID NOT NULL NUMBER(4) 雇员ID LAST_NAME VARCHAR2(15) FIRST_NAME VARCHAR2(15) MIDDLE_INITIAL VARCHAR2(1) JOB_ID NUMBER(3) 工种ID(JOB.JOB_ID) MANAGER_ID NUMBER(4) 领导ID(EMPLOYEE.EMPLOYEE_ID) HIRE_DATE DATE 雇佣日期 SALARY NUMBER(7,2) 薪水 COMMISSION NUMBER(7,2) 佣金 DEPARTMENT_ID NUMBER(2) 部门ID(DEPARTMENT.DEPARTMENT_ID) TABLE: SALARY_GRADE 薪资等级表 - - - GRADE_ID

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!