`

Oracle(SQL 之视图)

阅读更多
-- 查询部门号为10所有的员工,所有得到提成的员工,以及20号部门工资不超过2000的美元的员工
select * from emp where empno=10 or comm is not null or deptno=20 and sal>2000;
--  union 函数 去除重复的
select deptno from dept union  select deptno from emp;
-- 授权
grant create view to scott;
grant create table to  scott;
grant create session to scott;
--  创建视图
create view V
as
    select * from emp
where job = 'SALESMAN' ;
-- 授权视图 
grant create view to scott;
-- 使用union all 把 表中的行组合在一起
select ename from emp
union all
union
select dname from dept;
-- 显示10部门员工的姓名 以及员工所在地点   简单的两个表的查询
--等值连接 内链接的一种
select
e.ename,d.loc
from
emp e,dept d
where
e.deptno=d.deptno
and d.deptno=10;
-- 利用(inner) join on关键字  内连接
select
e.ename,d.loc
from
emp e inner join dept d on(d.deptno=e.deptno)
and d.deptno=10;
-- 利用别名查询表
select d.* from dept d;
--查询 三个表显示数据
create table emp_bonus(
   enpno number,
   received varchar2(20),
   type number
);

--修改把字段名enpno修改 empno;
--alter table [表名]  rename   column 旧的字段名 to 新的字段名;
alter table emp_bonus rename  column enpno to empno;
select * from emp_bonus;
insert into emp_bonus values(7369,'14-MAR-2005',1);
insert into emp_bonus values(7900,'14-MAR-2005',1);
insert into emp_bonus values(7788,'14-MAR-2005',1);

-- 将员工的奖励加入到系统当中
select
e.ename ,eb.received ,d.loc
from
emp e,emp_bonus eb,dept d
where
e.empno=eb.empno
and
d.deptno=e.deptno;
-- 查到的不是我们想要的结果
-- 应该现实全部类容 左外连接
select e.ename,eb.received,d.loc
from
emp e,emp_bonus eb,dept d
where
e.deptno=d.deptno
and e.empno=eb.empno(+);
-- 使用标量子查询  把第二列已经查出来
select
e.ename ,d.loc,(select eb.received  from emp_bonus eb where eb.empno=e.empno)as received
from
emp e , dept d
where e.deptno=d.deptno;
-- 高级查询   去除重复行
select  ename  from
(select row_number() over(order by ename)rn,ename
     from  emp
)
where mod(rn,2)=1;

-- 创建序列
create sequence panhe;
-- 查找序列
select panhe.nextval panhe;
select panhe.currval panhe;
-- 序列支持并发
-- 主要用于主键生成策略
分享到:
评论

相关推荐

    如何在Oracle或SQLServer中对视图(view)加密以保护视图中的SQL代码?

    因Oracle暂不支持对视图(View)的加密,在实际工作中有时需提供给第三方只读账户,为保护知识产权,可用文中所述方法防止第三方账户查看视图(View)中的SQL代码。

    Oracle Sql语句转换成Mysql Sql语句

    7. **视图和存储过程**:Oracle的视图和存储过程可能需要在MySQL中重新编写,因为两者的语法和权限管理不同。 OracleSqlConvert4MysqlSqlTool.java这个源码工具,根据描述,应该是实现了自动读取Oracle SQL语句,...

    Oracle SQL高级编程

    由于标题和描述是重复的且没有提供实质性的内容,我们无法从中得知具体的Oracle SQL高级编程知识点。但是,从标题我们可以推测该文档可能是关于如何使用Oracle数据库中的SQL语言进行高级编程。Oracle数据库是一个...

    Oracle Sql基础(beginning oracle sql中文版)

    Oracle SQL是数据库管理员和开发人员用来与Oracle数据库交互的语言,它是SQL标准的扩展,提供了许多特有的功能和优化。本资源“Oracle Sql基础(beginning oracle sql中文版)”旨在为初学者提供一个全面的Oracle ...

    Oracle SQL 官方文档

    Oracle SQL 是一种强大的数据库查询和编程语言,广泛用于管理和操作Oracle数据库系统。11g第二版(11G2)是Oracle的一个重要版本,提供了许多增强功能和优化。本官方文档集包括四份重要的参考资料,涵盖了Oracle SQL...

    SQL 优化之 oracle物化视图

    Oracle 物化视图 Oracle 物化视图是数据库对象,存储远程表的数据副本,也可以称为快照。物化视图可以查询表、视图和其他物化视图。通常情况下,物化视图被称为主表(在复制期间)或明细表(在数据仓库中)。 创建...

    Oracle_View视图创建

    ### Oracle视图创建详解 #### 一、前提条件与背景介绍 在Oracle数据库环境中,我们已经建立了两张表:`rt_issuesect` 和 `roadstate`。为了更好地管理和查询这两张表的数据,本教程将详细介绍如何利用Oracle的视图...

    oracle常用系统视图+导入导出

    这个文件很可能包含了创建和查询Oracle系统视图的SQL脚本。一些常见的系统视图包括: 1. `ALL_TAB_COLUMNS`:提供所有用户可以访问的表的所有列信息,如列名、数据类型等。 2. `DBA_OBJECTS`:包含数据库中的所有...

    ORACLE SQL性能优化系列

    除了以上几点以外,ORACLE 还提供了许多其他的优化技术,例如:索引、视图、物化视图、分区表、并行查询等等。这些技术可以帮助开发者和数据库管理员提高数据库的性能和可扩展性。 ORACLE SQL 性能优化系列提供了...

    Oracle四大宝典之一:Oracle Sql基础 中文版

    第三章 ORACLE SQL 单行函数 第四章 从多表中查询数据 第五章 用组函数合计数据 第六章 子查询 第七章 操纵数据 第八章 创建和管理表 第九章 内置约束 第十章 创建视图 第十一章 其他数据库对象 第十二章 控制用户...

    记使用Oracle SQL Developer 迁移MySql 数据至 Oracle.docx

    最常见的问题之一是“视图或表不存在”,这通常是因为Oracle的用户名与MySQL数据库名不匹配。因此,确保两者的一致性至关重要。此外,检查Oracle服务是否正常运行,特别是Oracle监听器和服务,它们是数据迁移的基础...

    《精通Oracle SQL 第2版》PDF版本下载.txt

    根据提供的文件信息,我们可以推断出这是一本关于Oracle SQL的专业书籍——《精通Oracle SQL 第2版》。接下来,我们将围绕这一主题展开深入探讨,包括Oracle SQL的基本概念、本书的主要内容以及学习Oracle SQL的一些...

    oracle实现带参数视图

    ### Oracle 实现带参数视图 #### 背景与概念 在数据库设计与管理过程中,视图(View)作为一种虚拟表,对于简化查询、增强数据安全性和提供数据抽象具有重要作用。然而,标准的视图定义是静态的,无法根据不同的...

    oracle带参数视图

    Oracle 带参数视图实践 Oracle 数据库中的视图通常是不带参数的,但有时,我们需要使用带参数的视图来方便查询数据。下面将简要介绍 Oracle 带参数视图的实践。 一、问题描述 在实际应用中,我们遇到了一个问题...

    OracleSQLDeveloper

    这个工具的强大之处在于其直观的用户界面和广泛的功能集,包括数据查询、数据模型设计、数据库对象管理、SQL脚本执行以及数据库迁移等。 在Oracle SQL Developer中,你可以执行以下关键操作: 1. **数据查询**:...

    Oracle SQL Developer 使用说明

    Oracle SQL Developer 是一款由Oracle公司推出的强大的数据库管理工具,它为数据库管理员(DBA)、开发者以及数据分析师提供了全面的功能,以高效地管理和操作Oracle数据库。本文档将深入讲解Oracle SQL Developer的...

    ORACLE_SQLDeveloper使用教程

    - 在 SQL Developer 中,可以轻松地浏览数据库中的各种对象,如表、视图、存储过程等。 - 对象列表通常显示在左侧的树状结构中。 2. **创建、导入导出 Oracle 数据库连接:** - SQL Developer 支持创建新的...

    C# 实现oracle数据库视图的迁移

    Oracle数据库的视图是预编译的SQL查询,它不包含数据,而是提供了一个虚拟表,用于简化复杂的查询逻辑。 在C#中,迁移Oracle视图的步骤主要包括以下几个方面: 1. **建立数据库连接**:使用OracleConnection类创建...

    OracleSQL必备参考

    Oracle SQL是数据库管理员和开发人员在处理Oracle数据库系统时不可或缺的工具。它是用于查询、更新、操作和管理Oracle数据的强大语言。以下是一些Oracle SQL的关键知识点,这些知识点对于理解和掌握Oracle SQL至关...

    oracle SQL语法大全

    Oracle SQL,全称为结构化查询语言,是用于管理和操作Oracle数据库的强大工具。它允许用户查询、更新、插入和删除数据,以及创建和管理数据库对象。本资料“Oracle SQL语法大全”将全面涵盖Oracle SQL的基础概念、...

Global site tag (gtag.js) - Google Analytics