`

ORACLE命令_L(练习),希望对大家有用

阅读更多

O(∩_∩)O~最近几天看ORACLE来着,把自己觉得有用的都保留下来了,其中有我比较纠结的左连接,O(∩_∩)O~ 希望对大家有所帮助。


//表和约束
定义emp_1表 主键为emp_1表中的empno字段
alter table emp_1 add primary key(empno);
或 alter table emp_1 modify empno primary key;
定义emp_1表 外键为dept表中的deptno字段
alter table emp_1 add foreign key(deptno) references dept(deptno);
定义t08163表 中email唯一性约束
Alter Table t08163 Add Constraint t3_email_uk Unique(email)

列级约束和表级约束的区别

列级约束:  从形式上看,在每列定义完后马上定义的约束,在逗号之前就定义好了。
carete   table     parent(c1 number  primary key );       
create   table    child  (c  number primary key ,   c2 number  references parent(c1));

表级约束:   从形式上可以看出与列级约束的区别了吧。
create   table  child( c number ,  c2  number  , primary key (c2),  foreign key(c2)  references  parent(c1));
有些时候,列级约束无法实现某种约束的定义,比如联合主键的定义,就要用到表级约束:
create table test(id1 number , id2 number, primary key(id1, id2));



把emp_1表的jquery名称改为jquery1,可以写多条语句
   alter table emp_1 add jquery1 varchar2(10)
   update emp_1 set jquery1=jquery
   alter table emp_1 drop column jquery
或 alter table emp_1 drop (jquery)
复制表结构
create table emp_1 as select * from emp where 1<>1

//分页
SELECT * FROM (    SELECT A.*, ROWNUM RN FROM (SELECT * FROM emp) A WHERE ROWNUM <= 10)WHERE RN >= 1

//关于纠结的左连接的问题

//等值连接 如果emp表中有一条记录没有部门号,则等值连接后,这条记录不显示
select ename,dname from emp,dept where emp.deptno=dept.deptno

//左连接 如果emp表中有一条记录没有部门号,则等值连接后,这条记录显示,部门号显示为NULL
select ename,dname from emp,dept where emp.deptno=dept.deptno(+)

//SQL99写法
//查询哪个学生没有选课(用外连接)。
Select * From student s Left Join sc On  s.sno = sc.sno Where sc.sno Is Null
//查询哪门课没有人选(用外连接)。
Select * From sc Right Join course c On sc.cno = c.cno Where sc.cno Is Null

左连接显示左边表的所有行,  
右连接显示右边表的所有行  
外连接显示所有表的所有行  
内联界,显示能连接的所有行Top

//事务(Transaction)是访问并可能更新数据库中各种数据项的一个程序执行单元(unit)

oracel 去字符串空格
select replace(trim('  I   love   U  '),' ','')from dual

转换数值(金钱)格式
Select to_char(1233654699.99,'L9,999,999,999.99') From dual


Oracle计算时间差表达式

有两个日期数据START_DATE,END_DATE,欲得到这两个日期的时间差(以天,小时,分钟,秒,毫秒):
天:
ROUND(TO_NUMBER(END_DATE - START_DATE))
小时:
ROUND(TO_NUMBER(END_DATE - START_DATE) * 24)
分钟:
ROUND(TO_NUMBER(END_DATE - START_DATE) * 24 * 60)
秒:
ROUND(TO_NUMBER(END_DATE - START_DATE) * 24 * 60 * 60)
毫秒:
ROUND(TO_NUMBER(END_DATE - START_DATE) * 24 * 60 * 60 * 60)

//计算多少虚岁
select ROUND(TO_NUMBER(sysdate - to_date('1988-02-09','yyyy-mm-dd'))/365) from dual

//计算多少实岁
select TRUNC(TO_NUMBER(sysdate - to_date('1988-02-09','yyyy-mm-dd'))/365) from dual

0
0
分享到:
评论

相关推荐

    初学者必备oracle 1000个常用命令_oracle 命令大全_oracle命令集合

    oracle 常用命令_oracle 命令大全_oracle命令集合_oracle基本命令 非常方便,带查询功能,能很方便的查询你要找的oracle命令写法

    oracle service_name参数

    ### Oracle Service_Name 参数详解 #### 一、概述 在Oracle数据库管理中,`service_name`是一个重要的参数,它用于标识数据库实例所提供的服务名称。通过设置正确的`service_name`,可以确保客户端应用程序能够...

    oracle_commond.rar_odbc api_oracle_oracle 客户端_oracle sql_sql

    本文将基于"oracle_commond.rar_odbc api_oracle_oracle 客户端_oracle sql_sql"这一主题,深入探讨Oracle数据库的相关知识,包括ODBC API、Oracle客户端工具以及SQL在Oracle中的应用。 1. ODBC API(Open Database...

    oracle 使用命令创建oracle数据库

    ORACLE_HOME=$ORACLE_BASE/oracle ORACLE_SID=hsj PATH=$ORACLE_HOEM/bin:$PATH; LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH LD_LIBRARY_PATH  3...

    Oracle_VM_VirtualBox_Extension_Pack-5.0.2-102096扩展包

    Oracle_VM_VirtualBox_Extension_Pack-5.0.2-102096扩展包

    oracle_监控脚本.rar

    check_oracle base_module --listener -n 主机名或IP -l --RAC check_oracle base_module --vip -n 主机名或IP -v check_oracle base_module --db -n 主机名或IP -d --RAC check_oracle base_module --scan_listener...

    Oracle_api.zip_Oracle_API_Oracle_API.CHM_oracle_oracle API_oracl

    Oracle API 是Oracle数据库的核心组成部分,它提供了一系列的接口供开发者使用,以便于与数据库进行交互、执行SQL语句、管理数据库对象以及实现更高级的功能。`Oracle_api.zip`中的`Oracle_API.CHM`文件是一本关于...

    Oracle的NLS_DATE_FORMAT设置(日期格式设置)_ITPUB博客.mhtml

    Oracle的NLS_DATE_FORMAT设置(日期格式设置)_ITPUB博客.mhtml

    环境变量ORACLE_UNQNAME未定义问题

    环境变量 ORACLE_UNQNAME 未定义问题 环境变量 ORACLE_UNQNAME 未定义问题是 Oracle 数据库管理系统中常见的一种错误,该错误通常是由于环境变量 ORACLE_UNQNAME 未被正确设置所致。该环境变量用于指定 Oracle ...

    MLDN魔乐科技JAVA培训_Oracle课堂20_完整练习.rar

    这个课程可能专注于第20个课堂的内容,重点在于通过实际练习来深化学习者对Java和Oracle数据库的理解。 【描述】: 描述中的信息与标题相同,再次确认了这是一个包含完整练习的Java和Oracle教程资源,可能涵盖了理论...

    通过ORACLE的UTL_HTTP工具包发送包含POST参数的请求

    在Oracle环境中,经常需要与外部系统进行交互,特别是在需要从Web服务器获取数据或向其发送数据的情况下。`UTL_HTTP`是Oracle提供的一款强大工具包,它允许用户通过SQL和PL/SQL编写程序来调用HTTP协议,实现与Web...

    Environment variable ORACLE_UNQNAME not defined错误解决

    当执行某些Oracle管理命令时(如`emca`),系统可能会报错:“Environment variable ORACLE_UNQNAME not defined. Please set ORACLE_UNQNAME to database unique name”。这通常意味着当前环境中缺少必要的环境变量...

    Oracle_VM_VirtualBox_Extension_Pack-4.2.16扩展包

    Oracle VM VirtualBox是一款开源的虚拟化软件,由Oracle公司提供,它允许用户在单个物理主机上运行多个操作系统,提供了一种高效且灵活的虚拟化解决方案。"Oracle_VM_VirtualBox_Extension_Pack-4.2.16"是VirtualBox...

    ORCL数据库相关文档.rar_ORCL数据集合_Oracle命令集合_busy7dm_globewxf_oracle

    在"ORCL数据库相关文档.rar"这个压缩包中,我们可以找到一系列关于Oracle数据库的重要资料,尤其是"Oracle命令集合"部分,它涵盖了Oracle数据库管理和操作的各种常见命令。 首先,创建实例是Oracle数据库管理的基础...

    Oracle命令

    根据提供的文件内容,我们可以归纳和展开以下几个主要的知识点: ### Oracle 的安装与基本操作 #### 安装步骤 - **访问官方下载页面**:...这些信息对于初学者以及日常使用 Oracle 数据库的开发人员都是非常有用的。

    修改oracle_sid和db_name名字

    修改 Oracle_sid 和 db_name 名字 在 Oracle 数据库中,sid 和 db_name 是两个非常重要的参数,分别表示数据库实例名和数据库名字。修改这两个参数需要谨慎,因为它们对数据库的运行和性能有着直接的影响。在本文中...

    Oracle_backup.rar_oracle_oracle 备份_备份

    在Oracle数据库管理中,备份是确保数据安全性和可用性的重要环节。本文将深入探讨Oracle数据库的逻辑备份,包括表备份、用户备份和完全备份三种模式,以及如何进行这些备份操作。 1. 表备份:在Oracle数据库中,表...

    Oracle_PPT+练习题

    - `oracle2015考题答案.docx`:这份文档可能是2015年Oracle考试题目的答案,对于考生或学习者来说,这是一个极好的自我评估工具,可以帮助检查对Oracle知识的理解程度,同时也能提供解题策略和技巧。 2. **Oracle_...

Global site tag (gtag.js) - Google Analytics