oracle学习笔记

2019-03-22 09:36

---TEST day01 --查看系统时间

SELECT SYSDATE FROM dual --DDL语句 数据定义语言 CREATE TABLE GUOHUA(

NAME VARCHAR2(21) NOT NULL,

basec NUMBER(3) DEFAULT 60 ,--在赋值过程中体现 oop NUMBER(3) , jvavaSE NUMBER(3) )

---查看表结构 查看表属性,及属性的值得类型 DESC GUOHUA ---删除表

DROP TABLE GUOHUA

INSERT INTO GUOHUA(NAME,OOP,jvavaSE) VALUES('SDF',34,23) --查看表中内容

SELECT * FROM GUOHUA

--修改内容 UPDATE GUOHUA SET BASEC=80 WHERE NAME='SDF' --删除一行

DELETE FROM GUOHUA WHERE BASEC=60

******************DAY02********************

VARCHAR2必须指定长度, char可以不指定字节,默认为1. 4000长度 2000长度 long在oracle是字符串,内容长度2GB CLOB:存储定长,变长字符串,内容长度4GB

************SELECT 语句 查询的意思 SELECT (字段,多字段用逗号隔开) 表明 WHERE 条件 列:

SELECT JOB,ENAME,SAL FROM EMP_GH --查看表中的 job,ENAME,SAL WHERE JOB='CLERK'--满足job = clerk,也可以是大于等于号

SELECT * FROM EMP_GH

WHERE SAL>2000

****************函数

***CONCAT(CHAR, CHAR) 函数,用于连接字符串,变成一个字符串 SELECT CONCAT(ENAME,JOB) FROM EMP_GH **可以将字符连接

SELECT CONCAT(ENAME,'傻逼') FROM EMP_GH

**CONCAT可以进行嵌套,现将两个字符串连接成为一个字符,在使用concat将下一个进行连接

SELECT CONCAT(ENAME,CONCAT(':',JOB)) FROM emP_GH

*** || 可以进行字符串连接,与java中的+号一样,更常用!!! SELECT ENAME||':'||job from EMP_GH

*** 字符串长度 LENGTH( VARCHAR2 )

SELECT ENAME,LENGTH(ENAME) FROM EMP_GH

***UPPER , LOWER, INITCAP 全大写 , 全小写, 首字母大写

DUAL 是伪表,是用来测试函数的,能查询出一条记录,查询的东西与任何字段无关的使用伪表

SELECT

UPPER('nh') , LOWER('HELLO'),

INITCAP('hello WORLK'), INITCAP('HELLOWORLK'), INITCAP('HELLO WORLK') FROM DUAL

**实例运用 查找emp_gh表中的scott的人的信息所有信息 SELECT * FROM EMP_GH

WHERE ENAME=UPPER('scott')

***TRIM / LTRIM / RTRIM

去掉字符 去掉左端的字符串 去掉右端的字符串

**去掉两段相同的字符,只能是单个字符,不能出现字符串, SELECT TRIM ( 'l' FROM 'llllldfsfdlllllll' ) FROM DUAL

**去掉左端的字符,只要在右边参数出现过得字符,都去掉,不分顺序 SELECT LTRIM('SDDSSDDSDSDSLITE','SD') FROM DUAL

**去掉右端的字符,只要在右边参数出现过得字符,都去掉,不分顺序 SELECT RTRIM('LITESDDSSSDDDSDSDD','SD') FROM DUAL

**LPAD, RPAD 补位函数

SELECT LPAD(SAL,9,'s') FROM emp_gh

SELECT RPAD(SAL,9,'s') from emp_gh

SELECT LPAD(SAL,5,'') FROM EMP_GH

***SUBSTR 截取字符串,下标开始是1,且第二个函数是个数,取都是从左往右取. 若第2个参数超过了界限,则就代表将后面全部取完 **从第十个位置开始取2个, SELECT

SUBSTR('thinking in java',10,2) FROM DUAL

**从倒数第7个开始取2个, SELECT

SUBSTR('thinking in java',-7,2) FROM DUAL SELECT

SUBSTR('thinking in java',-7,100) FROM DUAL

****INSTR 查找字符的位置

查找In在thinking in java 中从第四个位置开始,出现2次后的位置,如果没有则返回0

SELECT

INSTR ('THINKING IN JAVA','IN',4,2) FROM DUAL

**ROUND 函数,四舍五人

如果第二个参数是0 ,可以省略.参数为负表示小数点前 SELECT

ROUND(55.12545,2), ROUND(55.12545,0), ROUND(55.12545), ROUND(55.12545,-1), ROUND(55.12545,-2) FROM DUAL

**TRUNC 函数,数值得截取,不做四舍五人 SELECT

TRUNC(45.2552,2), TRUNC(45.2552,0), TRUNC(45.2552,-1), TRUNC(45.2552,-2) FROM DUAL

**MOD(M,N),求余数,m/n的余数 SELECT

ENAME,SAL,MOD(SAL,1000) FROM EMP_GH

***CEIL(N),FLOOR(N),向上取整,向下取整 SELECT CEIL(45.2) FROM DUAL//46 SELECT FLOOR(45.2) FROM DUAL//45*

***时间戳 TIMESTAMP 11个字节

**SYSDATE:返回一个当前时间date类型 **SYSTIMESTAMP:返回一个当前时间戳 SELECT SYSDATE,SYSTIMESTAMP FROM DUAL

******转换函数

**TO_DATE()时间转换函数,日期格式字符串中除了字母数值和符号之外,其他的字符串都

要使用双引号括起来

SELECT

TO_DATE('2012-12-20 5:45:5','YYYY-MM-DD HH24:MI:SS') FROM DUAL

SELECT

TO_DATE('2012年12月20日 5:45:5','YYYY\年\月\日\ FROM DUAL

***TO_CHAR()将制定格式的时间变成字符串 SELECT

TO_CHAR(SYSDATE,'YYYY-MM-DD HH24:MI:SS') FROM DUAL

***DATE可以进行计算,

对DATE加减一个数值,等同于加减天数, 两个DATE之间相减,相当于相差的天数 DATE也可以比较大小,越晚越大

查看明天日期 SELECT SYSDATE+1 FROM DUAL 查看日值时间 SELECT

ENAME,TRUNC( SYSDATE-HIREDATE,0) FROM EMP_GH

** 输入自己生日看活了多少天 SELECT

TRUNC(SYSDATE - TO_DATE('1930-02-21','YYYY-MM-DD')) FROM DUAL

****LAST_DAY(DATE) 查看给定日期的月底是哪天 SELECT

LAST_DAY(SYSDATE) FROM DUAL

***ADD_MONTHS(DATE,I)给定date加i个月,如果i为负就是减去月 查看员工转正日期,在入职日期上面加上一个3月. SELECT

ENAME,HIREDATE,ADD_MONTHS(HIREDATE,3) FROM EMP_GH

查看员工20周年的纪念日 SELECT

ename,ADD_MONTHS(HIREDATE,12*20) FROM EMP_GH

***MONTHS_BETWEEN(DATE1,DATE2)

返回date1余date2之间相差多少个月 *** 查看入职多少个月了 SELECT

MONTHS_BETWEEN(SYSDATE,HIREDATE) FROM EMP_GH **NEXT_DAY(DATE,i)

查看指定日期之后一天开始的周(i-1),列,5代表周4 今天周六 SELECT

NEXT_DAY(SYSDATE,1)//明天 FROM DUAL SELECT

NEXT_DAY(SYSDATE,7)//下周六 FROM DUAL

*****LEAST/GREATEST函数 最小值/最大值 SELECT

LEAST(SYSDATE,SYSDATE+5)--最小值 FROM DUAL

SELECT

GREATEST(SYSDATE,SYSDATE+5)--最大值 FROM DUAL

****EXTRACT() 获取指定时间分量的值 查看满足1981年入职的员工 SELECT

ENAME,HIREDATE FROM EMP_GH

WHERE EXTRACT(YEAR FROM HIREDATE)=1981 *******************null的含义


oracle学习笔记.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:形势与政策

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: