`
merrymode
  • 浏览: 54558 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

oracle 学习笔记(1)

 
阅读更多

--更改用户口令
alter user test identified by test

--DDL 数据定义语言:操作数据库对象的语言,对数据库对象进行的创建(create),修改(alter),删除(drop)
--DML 数据操纵语言:对表的数据进行增(insert),删(delete),改(update),查(select)
--TCL 事物控制语言:事物的提交、回滚等。(commit,rollback,savepoint)
--DCL 数据控制语言:Grant、revoke

--sysdate  & sysTimestamp
select sysdate from dual;
select to_char(sysdate,'yyyy-MM-dd') from dual;
select to_char(sysdate,'yyyyMMdd') from  dual;
select to_date('20010203','yyyy-MM-dd') from dual;
select systimestamp from dual;

-- rowID &  rowNum
select rowId,sysdate from dual;
select Rownum ,sysdate from dual;
select * from g_jobinfo where rownum <10;

--trancate & delete
--desc
desc tablename
--DML
select * from g_jobinfo;
--使用现有表创建新表 // create table tablename as select
create table gg_jobinfo as select ID,Name,City,DUty from g_jobInfo;
select *  from gg_jobinfo;
create table ggg_jobinfo as select ID,Name ,city,duty from g_jobinfo where 1=2;
select * from ggg_jobinfo;

--ROLLBACK
--rollback to savepoint svt;
select * from gg_jobinfo where rownum<10;
update gg_jobinfo set city = 'WH' where id = 63;
savepoint marker1;
delete from gg_jobinfo where id = 62;
savepoint marker2;
rollback to savepoint marker1;

select * from gg_jobinfo where id = 63;
select * from gg_jobinfo where id = 62;

--union
select count(*) from (select ID,Name,City,DUty  from g_jobinfo union select * from gg_jobinfo);
select count(*) from gg_jobinfo;
select count(*) from g_jobinfo;
 
--union all
select count(*) from (select ID,Name,city,duty from g_jobinfo union all select * from gg_jobinfo);
select b.* from (select ID,name ,city ,duty from g_jobinfo
      union all
      select * from gg_jobinfo) b order by b.id DESC

--intersect
select count(*) from (select id,name ,city ,duty from g_jobinfo
       intersect
       select * from gg_jobinfo) ;
      
--minus
select Id ,name ,city ,duty from g_jobinfo
       minus
       select * from gg_jobinfo;
      
--单行函数:即对表中的没行记录,他们都返回一个值,单行函数可以用在select子句和where子句当中
--          主要包含日期函数、字符串函数、数字函数、转换函数,其他函数
--日期函数
select sysdate ,add_months(sysdate,2) from dual;
select sysdate,add_months(sysdate,-5) from dual;
select sysdate,add_months(sysdate,-9.981) from dual;

select months_between(sysdate,add_months(sysdate,-1)) from dual;

--last_day :返回指定日期当月的最后一天
select last_day(sysdate) from dual;
select last_day(add_months(sysdate,-9)) from dual;

--round
select ROUND(sysdate) from dual; --默认为不加参数,舍到最近的星期日
select round(sysdate ,'day') from dual;
select round(sysdate,'YEAR') from dual;--舍入到最近的年的开始:1月1日
select round(sysdate,'month') from dual;--月的第一日

select round(-1) from dual;

--next_day
select next_day(sysdate,'星期二') from dual;

--trunc
select trunc(sysdate,'YEAR') from dual;
select trunc(sysdate,'Month') from dual;
select trunc(add_months(sysdate,-15),'day') from dual;

--extract
select extract(year from sysdate) from dual;
select extract(month from sysdate) from dual;
select extract(day from sysdate) from dual;
--select extract(hour from sysdate) from dual;
--select extract(minute from sysdate)from dual;
--select extract(second from sysdate) from dual;
select to_char(sysdate,'YYYY') from dual;


--字符串函数
select chr(65) from dual;
select ascii('A') from dual;
select initcap('hello') from dual;--首字母大写
select ltrim('abdcsss','ab') from dual;
select Rtrim('abdcsss','sss') from dual;
select trim('abc_abe_abd_ea') from dual;

select translate('我是谁abcdef','我abde','1245') from dual;
select  replace('我是谁abcdef','我','yyy') from dual;
select instr('我是谁abcdef','c') from dual;
select subSTR('我是谁abcdef',3,4) from dual;--从第三个开始,截取4个字符,索引从1开始
select concat('我是谁abcdef','我是谁abcdef') from dual;
select LPAD('function',15,'=') from dual;
select RPAD('function',15,'=') from dual;

select length('skjkasdf') from dual;

--decode
select id ,decode(city,'SH','上海','WH','武汉','QD','青岛')from gg_jobinfo;
select id,
       case city
         when 'SH' then '上海'
         when 'WH' then '武汉'
         when 'QD' then 'qingdao'
       end
         from gg_jobinfo;
        
--数字函数
select sign(34) from dual;
select sign(0) from dual;
select sign(-1333) from dual;

--转换函数
select to_char(sysdate,'yyyy"年"MM"月"dd"日"') from dual;
select to_char(sysdate,'yyyy"华裔"MM"华裔"dd"华裔"') from dual;
select to_char(sysdate,'YYYY"年"fmMM"月"fmDD"日"  HH24:MI:SS') from dual;
select to_char(sysdate,'YYYY"年"fmMM"月"fmDD"日"  HH12:MI:SS') from dual;

select to_char(id,'L99999') from g_jobinfo;
select to_char(id,'C99999') from g_jobinfo;
select to_char(id,'999,999.00') from g_jobinfo;

--to_date
select to_date('2011-02-12','yyyy-mm-dd') from dual;

--NVL
--select nvl(colomn,'') from dual
--NVL2

--count
select count(*) from gg_jobinfo;
select count(duty) from gg_jobinfo;
select count(distinct duty) from gg_jobinfo;
--group by
select distinct city from gg_jobinfo;
select city,count(*) cnt  from gg_jobinfo group by city;

--分析函数 row_number(),rank(),dense_rank();
select * from emp;--以scott模式下的emp表为例

select ename,job,deptno,sal,row_number() over(order by sal desc) as sal_rank from emp;
select ename,job,deptno,sal from emp order by sal Desc;

select ename,job,deptno,sal ,row_number() over(partition by deptno order by sal desc) as sal_rank from emp;
select * from (select ename,job,deptno,sal ,row_number() over(partition by deptno order by sal desc) as sal_rank from emp) where sal_rank=1;
select ename,job,deptno,sal,rank() over(partition by deptno order by sal desc) as sal_rank from emp;
select ename,job,deptno,sal, dense_rank() over(partition by deptno order by sal desc) as sal_rank from emp;

分享到:
评论

相关推荐

    oracle学习笔记1

    在尚学堂马世兵的Oracle课堂笔记中,我们能看到一系列基础的SQL查询语句,这些都是学习Oracle数据库不可或缺的部分。 首先,`DESC`命令用于获取表的结构信息,例如`DESC emp`、`DESC dept`和`DESC salgrade`分别...

    Oracle学习笔记1.docx

    Oracle 学习笔记 1 本文档涵盖了 Oracle 学习的基础知识,包括客户端工具、用户管理、表结构、SELECT 语句、DISTINCT 操作、WHERE 子句、ORDER BY 子句和 SQL 函数等内容。 客户端工具 Oracle 提供了多种客户端...

    Oracle学习笔记 PDF

    ### Oracle学习笔记知识点详解 #### 一、Oracle简介 Oracle是一家知名的软件公司,以其数据库管理系统闻名全球。该公司成立于1977年,总部位于美国加利福尼亚州。Oracle不仅提供数据库解决方案,还涉及中间件、...

    Oracle学习笔记1.doc

    ### Oracle学习笔记知识点详解 #### 一、Oracle的卸载步骤及注意事项 ##### 软件环境 - **操作系统:** Windows XP - **Oracle版本:** 8.1.7 - **安装路径:** C:\ORACLE ##### 卸载方法 1. **停止Oracle服务:** -...

    Oracle学习笔记

    Oracle学习笔记 Oracle学习笔记是李兴华老师编写的Oracle从入门到精通的学习笔记,涵盖了 Oracle 的多表查询、连接、组函数和分组统计等知识点。在本篇笔记中,李兴华老师详细介绍了多表查询的基本语法、左右连接...

    Oracle学习笔记精华版

    Oracle学习笔记精华版是针对数据库管理系统Oracle的一份重要学习资源,涵盖了从基础概念到高级特性的全面知识。Oracle,作为全球广泛使用的大型企业级数据库系统,对于IT专业人员尤其是数据库管理员(DBA)来说,是...

    Oracle学习笔记.doc

    Oracle学习笔记 以下是我这一周学习oracle整理的笔记,包括课堂的内容和自己看额外看的视频补充的一些内容,基本上囊括了所有oracle的基本知识。主要的形式是例子代码加代码解释加运行结果,我个人认为对于没有学习...

    Oracle学习笔记.pdf

    在Oracle学习笔记中,对安装卸载和配置的详尽讲解,不仅为学习者提供了操作指导,而且还涉及到了数据库管理的一些基础知识点。这些内容对于数据库管理员和开发人员来说都是十分重要的,因为它们是操作Oracle数据库的...

    Oracle学习笔记-日常应用、深入管理、性能优化

    资源名称:Oracle学习笔记-日常应用、深入管理、性能优化内容简介:Oracle学习笔记-日常应用、深入管理、性能优化Oracle 11g是最具代表性的高端关系型数据库管理系统,它在世界各地的大型商务数据库应用系统中被广泛...

    oracle dba学习笔记

    Oracle DBA 学习笔记 标题:Oracle DBA 学习笔记 描述:学习使用维护 Oracle 数据库数年,对认为值得记录的 Oracle 维护脚本进行记录总结,存起来,虽然今后开源是方向,但不可否认 Oracle 仍然非常有水平的,在...

    oracle学习笔记整理

    以下是对Oracle学习笔记整理的主要知识点的详细说明: 1. **数据库选择**: 在决定使用哪种数据库时,通常需要考虑项目的规模、性能需求、安全性要求以及可用资源。Oracle数据库因其稳定性、可扩展性和高性能而被...

    Oracle学习笔记 Oracle学习笔记

    根据提供的信息,我们可以总结出以下Oracle数据库学习的关键知识点: ...以上是基于提供的内容整理出的Oracle学习笔记中的关键知识点。通过理解这些基础知识,可以更好地管理和操作Oracle数据库。

    oracle学习笔记.txt

    超详细Oracle学习笔记,详细记录了oracle的学习过程中遇到的各种问题及基础知识,适合初中级oracle使用人员学习参考。

    oracle学习笔记-入门基础

    Oracle数据库是世界上最流行的数据库管理系统之一,它提供了丰富的特性和功能来优化数据管理和查询性能。本文主要探讨Oracle数据库的入门基础知识,特别是与索引相关的概念。 首先,我们要理解ROWID的概念。ROWID是...

    Oracle学习笔记——日常应用、深入管理、性能优化 示例代码

    Oracle 11g是最具代表性的高端关系型数据库管理系统,它在世界各地的大型商务数据库应用系统中被广泛应用。本书设计了大量的应用情景,介绍了数据库管理员和开发人员常用的管理、维护和优化Oracle 11g数据库的技术和...

    oracle学习笔记下载

    ### Oracle 学习笔记知识点概览 #### 一、Oracle 数据库系统参数查询与管理 在 Oracle 数据库的学习过程中,了解如何查看和管理数据库的系统参数是非常重要的。这些参数直接影响着数据库的性能和稳定性。 ##### ...

    ORACLE经典学习笔记

    ### ORACLE经典学习笔记知识点概览 #### 第一章 ORACLE 命令 本章节主要介绍了Oracle数据库中常用的命令及其使用方法。 1. **查看参数文件**: `Desc v$parameter` - 这个命令用于查看Oracle的参数文件信息,通过...

Global site tag (gtag.js) - Google Analytics