`

Oracle学习笔记 2

阅读更多

个人博客:http://demi-panda.com

修改表中的列信息:
       alter table vendor_master modify(vencode varchar(20));
给表中列添加一个默认值约束
      alter table mytable modify(name varchar2(20) default 'abc');
为现有表中的列添加一个主键约束:
      alter table testtable add(constraint "idkey" primary key("ID"));
为现有的表添加一个列:
alter table vendor_master add(vid number(5));
为现有表删除一个列:
      alter table vendor_master drop column vid;
删除一个表:
      drop table vendor_master;

-- unio 返回两个查询选定的所有不重复的行。unio的使用
select vencode from vendor_master
union  select vencode  from order_master

--unio all返回两个查询选定的所有行,包括重复的行 ,unio all的使用
select vencode from vendor_master
union all select vencode  from order_master

--intersect 返回两个查询都有的行,intersect 的使用
select vencode from vendor_master
intersect select vencode  from order_master

--minus 的使用操作符只返回由第一个查询选定但是没有被第二个查
--询选定的行,也就是在第一个查询结果中排除在第二个查询结果中出现的行
select vencode from vendor_master
minus
select vencode  from order_master

--- || 连接符的使用
select ('供应商'||venname||'地址为:'||venadd1||'  '||venadd2||' '||venadd3) as 地址 from vendor_master
--使用DATE 关键字向数据库提供一个日期文本字符串,此日期必--须使用yyyy-mm-dd格式,以下代码演示了 date关键字;
insert into MYTABLE (ID, NAME, ADDRESS, EMAIL,REGDATE)
values (6, 'rose', 'tianjin', 'rose@sdi.com', date '2007-10-12')



--下列代码演示了通过 to_date() 函数返回的值添加到数据库中
insert into MYTABLE
(ID, NAME, ADDRESS, EMAIL,REGDATE)
values (6, 'rose', 'tianjin', 'rose@sdi.com', to_date('2007-10-23 12:36:58','yyyy-mm-dd hh24:mi:ss'))

-- add_month 的使用
select del_date ,add_months(del_date,2) from order_master

--months_between 的使用该函数返回两个日期之间的月数,格式为MONTHS_BETWEEN(d1,d2)
select to_date('2009-11-30','yyyy-mm-dd') from dual
select months_between(to_date('2009-12-31','yyyy-mm-dd'),to_date('2008-12-20','yyyy-mm-dd')) from dual

-- last_day的使用,该函数返回指定日期当月的最后一天的日期值,格式为LAST_DAY(d)
select sysdate,last_day(sysdate) from dual

-- ROUND, 格式为ROUND(d,[fmt]),d是日期,fmt是格式模型。
--fmt是一个可选项,日期默认舍入为最靠近的那一天。
--如果指定格式为年”YEAR”,则舍入到年的开始,即1月1日;如果格式为月”MONTH”,则舍入到月的第一日;如果格式为周”DAY”,则舍入到最靠近的星期日。
select round(to_date('2009-8-13','yyyy-mm-dd hh24:mi:ss'),'day') as m from dual

-- NEXT_DAY ,该函数返回指定的下一个星期几的日期,格式为
-- NEXT_DAY(d,day),d是日期,day指周内任何一天。
select next_day(sysdate,'星期五') from dual


--trunc函数将指定日期截断为由格式模型指定的单位的日期,
--与ROUND函数不同的是它只舍不入
select trunc(to_date('2009-12-12','yyyy-mm-dd'),'day') from dual
--函数提取日期时间类型中都特定部分,格式为
--EXTRACT(fmt FROM d)
select extract(year from sysdate) from dual

--根据ASCII码返回对应的字符
select chr(97) from dual

--LPAD 函数由三个参数 ,第一个参数是字符串,
--该字符串左边需要填充,第二个是数字,
--它表示返回值的总长度,第三个是字符串,
--需要时用它进行左填充。
Select lpad('function',10,'=') from dual;
--TRIM函数从字符串的开始或者结尾,裁剪特定的字符,默认裁剪空格
-- leading 表示从左往右,trailing 表示从右往左
-- leading和trailing 都不指定的情况下裁剪前后特定的字符
select trim(leading 9 from 99977589678999) from dual
select trim(9 from 99977589678999) from dual

--length 函数返回字符串的长度
select length('abcd') from dual

--decode 函数进行逐个值的替换
-- select decode(expr,search1,result1,search2,result2...[default])
select decode(2,1,'相同') from dual

-- to_char 转换字符串函数
SELECT TO_CHAR(sysdate,'YYYY"年"fmMM"月"fmDD"日" HH24:MI:SS')   FROM dual; 
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual
-- to_date 日期转换函数
select to_date('2009-10-10 13:12:12','yyyy-mm-dd hh24:mi:ss') from dual

--将空值转换为指定的值,NVL(expression1,expression2)
select vencode,venname,nvl(venadd1,'no') from vendor_master

--NVL2  使用 (如果第一个参数不为空返回第二个参数,否则返回第三个参数)
select vencode,venname,nvl2(venadd1,'北京','没有地址') from vendor_master

--NULLIF 使用(判断两个参数是否相等,如果相等返回 null ,否则返回第一个参数)
select nullif(1,2) from dual

--使用 rollup 子句为每个分组返回一条小计,并为全部分组返回总计:
Select  division_id,sum(salary),count(*) from employees2
Group by division_id
使用oracle 伪列删除表中重复记录:
  delete testtable t where t.rowid!=(select max(t1.rowid) from testtable t1 where t1.name=t.name)

delete table t where t.rowid!=(select max(t1.rowid) from table t1 where t1.name=t.name)

 

分享到:
评论

相关推荐

    Oracle学习笔记 PDF

    ### Oracle学习笔记知识点详解 #### 一、Oracle简介 Oracle是一家知名的软件公司,以其数据库管理系统闻名全球。该公司成立于1977年,总部位于美国加利福尼亚州。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学习笔记2:日常应用、深入管理、性能优化.

    第2章 数据库管理 第3章 数据库实例管理 第4章 数据库安全管理 第5章 数据库逻辑存储结构管理 第6章 数据库物理文件管理 第7章 数据库逻辑对象管理 第8章 常用数据操纵语言 第9章 备份和恢复数据库 第2篇 深入...

    oracle学习笔记-入门基础

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

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

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

    oracle学习笔记下载

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

    ORACLE经典学习笔记

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

    ORACLE学习笔记:日常应用、深入管理、性能优化.part1/2

    ORACLE学习笔记:日常应用、深入管理、性能优化.part1

    全网最全的oracle学习笔记

    全网最全的oracle学习笔记,oracle学习笔记,oracle,### 4、oracle的七个服务 ```sql 1、Oracle ORCL VSS Writer Service Oracle卷映射拷贝写入服务,VSS(Volume Shadow Copy Service)能够让存储基础设备(比如...

Global site tag (gtag.js) - Google Analytics