1 group by+子句 表示将查询结果按 子句中的一列或者多列的值进行分组,值相同 的为一组。
group by 有一个原则,就是 select 后面的所有列中,没有使用聚合函数的列,必须出现在 group by 后面。
如:对Oracle的 emp表和dept表进行查询。
查询每种职位的最低收入 (属性sal 是工资,comm 是奖金)
Select job,min(sal+nvl(comm,0)) from emp group by job;
查询每个部门的详细信息及相应的员工人数。
select d.deptno,d.dname,d.loc,count(e.deptno) from dept d join emp e on e.deptno=d.deptno group by d.deptno,d.dname,d.loc;
2 Null字段在数据库中是一个比较特殊的字段。Null字段表示未知值或者说缺少数据,注意若某个字段的值为Null,则这个字段即不是空格,也不是0。当插入记录的时候,若这个字段没有被赋值,而且也没有默认值的话,则这个字段系统默认给他的值就是“Null”。这时你select 出来的列是显示“ ” (空白);
在查询的时候,需要考虑到这个NULL值的影响。有时候,若数据库中已经有记录,则不能够改变数据库字段的默认值。遇到这种情况,若我们需要对NULL字段与数字字段进行四则运算的时候,会发现结果依然是null;此时结果的办法一是: 在Oracle中用 NVL(加班工资,0),表示若加班工资这一列不为null,则结果是这一列的值,若为null则为0;
Select 员工姓名,基本工资,加班工资,基本工资+NVL(加班工资,0) as 总工资 FROM 员工薪资表;如此的话,当加班工资的值为NULL的时候,则系统在运算的时候,会把其当作0来处理。这么处理,我们就可以得到我们所想要的结果。不过一般情况下,这一种处理方式是不得已而为之的。最好的是,在数据库表设计的时候,就给相关的字段设置0的默认值。
mysql中提供了ifnull(a,b)来替代 oracle 的nvl(a,b)
分享到:
相关推荐
本文档由一位经验丰富的数据库管理员(DBA)撰写,旨在总结一系列最佳实践,帮助开发人员在编写SQL语句时更加高效、准确。 #### 二、SQL语句基本编码规范 ##### 2.1 英文字母编写 - **规范要求**:SQL语句中除存储...
- 下载并安装 Oracle SQL Developer,这是一个免费的图形化工具,用于管理和开发 Oracle 数据库。 - 安装过程中可以选择所需的组件,例如支持的数据库类型等。 2. **连接到 Oracle 数据库:** - 打开 SQL ...
### Oracle SQL连接查询总结 #### 一、概述 在Oracle SQL中,连接查询是一种非常重要的技术,用于结合两个或多个表中的数据。连接查询能够帮助我们处理复杂的数据关系,提取出满足特定条件的信息。根据连接的方式...
总结,"Oracle SQL语法大全"涵盖了Oracle SQL的各个方面,无论你是初学者还是有经验的数据库管理员,都能从中获取宝贵的知识,提升你的数据库操作技能。通过深入学习和实践,你将能够更好地理解和利用Oracle数据库的...
《Pro Oracle SQL》是一本于2010年出版的专业性极强的技术书籍,由Karen Morton、Kerry Osborne、Robyn Sands、Riyaj Shamsudeen 和 Jared Still 共同编著。这五位作者均在Oracle领域拥有丰富的实践经验,并且是该...
根据给定的文件信息,我们可以总结出一系列关于Oracle SQL的经典查询练习知识点,这些知识点主要围绕着Oracle数据库中的SQL查询技巧,特别聚焦于“经典查询练手系列”文章中提到的练习题,旨在帮助读者加深对Oracle ...
本文将总结一些Oracle基本SQL语句,帮助用户快速复习并掌握其用法。 首先,了解SQL(结构化查询语言)的基础功能是十分必要的。SQL由一系列命令组成,这些命令允许用户与数据库进行交流。其中,SELECT语句是SQL中最...
#### 二、Oracle分页查询基本原理 在Oracle数据库中,实现分页查询主要有两种方式:基于`ROWNUM`和基于`OFFSET`和`FETCH`。在早期版本的Oracle中,通常使用`ROWNUM`来实现分页功能。 #### 三、基于ROWNUM的分页...
根据提供的文档信息,本文将对...以上总结了Oracle SQL语句的一些典型应用案例,涵盖了基本的SELECT语句、限定与排序操作以及常用的功能函数,希望这些知识点能够帮助读者更好地理解和掌握Oracle SQL的相关知识。
除了基本的操作外,Oracle SQL 还包含了一些特殊的功能,如窗口函数、游标和存储过程等,这些功能极大地增强了 SQL 的灵活性和功能性。 - **窗口函数**:如 LEAD()、LAG() 等,允许在查询结果集上进行复杂计算。 - ...
以上只是Oracle SQL使用中的一部分关键知识点,实际经验总结可能还包含更多关于性能调优、错误处理、数据转换、安全策略等方面的内容。在实践中,理解并熟练运用这些概念对于有效管理和利用Oracle数据库至关重要。
在Oracle SQL中,基本操作包括SELECT(查询)、INSERT(插入)、UPDATE(更新)和DELETE(删除)。理解这些语句的结构和用法是掌握Oracle SQL的第一步。 1. SELECT语句:用于从数据库中检索数据。你可以选择一个或...
根据提供的文档信息,我们可以归纳总结出一系列关于Oracle SQL的经典查询案例及解析,这些案例主要围绕着`scott.emp`(员工表)与`scott.dept`(部门表)两个表进行。以下将详细介绍文档中提到的部分经典查询知识点...
1. **定义**:Oracle SQL 是一种结构化查询语言(Structured Query Language),它是用于管理关系数据库的标准语言。 2. **功能**: - 数据定义(Data Definition):创建、修改或删除表等数据库对象。 - 数据操纵...
本文档总结了 Oracle 中常用的 SQL 语句,包括数据库的创建、删除、备份、表的创建、删除、修改、索引的创建、视图的创建等基本操作,以及一些高级查询运算符的使用。 一、数据库操作 * 创建数据库:CREATE ...
Oracle SQL是一种结构化查询语言,用于检索、更新、插入和删除Oracle数据库中的数据,而PL/SQL(Procedural Language/Structured Query Language)是Oracle数据库特有的过程式编程语言,它扩展了SQL的功能,使得能够...
总结,Oracle SQL语法大全.ppt这份资料将引导你深入了解Oracle数据库的SQL语法,从基本的查询到复杂的操作,再到性能优化和安全管理,为你的数据库管理和开发工作提供全面指导。通过深入学习,你可以熟练掌握Oracle...
Oracle SQL Reference 是一份详尽的文档,不仅覆盖了Oracle 11g Release 2版本中SQL语言的基本使用方法,还深入介绍了各种高级功能和最佳实践。无论是对于初学者还是经验丰富的开发人员来说,它都是不可或缺的参考...
总结来说,Oracle SQL Loader是一款功能强大的数据加载工具,不仅提供了灵活的数据格式支持,还具备高效的数据加载能力。通过合理配置命令行参数和控制文件,可以充分发挥其优势,实现高效的数据迁移任务。