`

SQL系列(一) 核心

阅读更多

SQL的目的就是简单地提供一个访问数据库的接口,每一条SQL语句对于数据库来说就是一条命令(指令)。

5个核心的SQL语句:

1.1.SELECT语句

   select语句:用于从一张或者多张表或者其他数据库对象中提取数据。Oracle是基于查询成本优化器(cost-based  optimizer,OCB)来产生实际的执行计划。

例如:

select   (Distinct)<column list>
from    <source object list>
join  on 
where  
group by 
having 
order by

       SQL有别于其他编程语言的一点在于首先处理的并不是第一行的语句(select),而是from字句。join on字句可以把处理过程中的每一步想象成生产一个临时的数据集。随着每个处理步骤的进行,这个数据集被不断地操作直到生成最终的处理结果。


1.2.from字句列出了所查询数据的源对象,例如:表、视图、物化视图、分区、子分区、子查询生成的子对象......

1.3.where可以按照条件来限制查询最终返回结果集的行数。每个条件(谓语)都是以两个值或表达式相比较形式出现。

1.4.group by字句将执行from和where字句得到的数据集进行聚合(分组)。你可以按照from字句中所列出对象的任意字段进行分组,即使你并不想输出结果列表中显示该列。相反,select列表中的任何非聚合字段都必须包括在group by字句中。group by字句中还可以包含两个附加的运算:ROLLUP和CUBE。ROLLUP运算用来产生部分求和值,CUBE运算用来求得交互分类值。提示:分组之后数据集并不会排序。

1.5.having字句将分组汇总之后的查询结果限定为只有该字句中的条件为真的数据行。

1.6.distinct字句用来在其他字句执行完成以后从结果集中去除重复的行。

1.7.order by字句用来对查询最终返回的结果集进行排序。排序对于数据量的大小(结果集中的总字节数)关系非常大,较小的排序会在内存中来实现,而较大的排序将使用临时磁盘空间来完成。一般来说,排序是查询过程中开销相当大的一个处理步骤,尤其是返回结果集很大的时候。


SQL语句执行顺序:

SQL执行顺序


分享到:
评论

相关推荐

    Microsoft SQL Server 2000 基础系列课程.rar

    【标签】"SQL Server 2000" 是这一压缩包的核心关键词,表明课程内容将涵盖SQL Server 2000的各个方面,包括但不限于安装配置、T-SQL语言、数据库设计、安全性、备份恢复、性能优化等。 【压缩包子文件的文件名称】...

    SQLServer全系列自动安装工具

    SQL Server全系列自动安装工具是针对Microsoft SQL Server数据库管理系统的一款高效实用的自动化部署工具。它旨在简化SQL Server的安装过程,让数据库管理员和IT专业人员能够快速、方便地设置和配置多个版本的SQL ...

    SQL Server 2005盛宴系列之六:新的选择――SQL Server Express 2005.zip

    在本课程中,我们聚焦于"SQL Server 2005盛宴系列之六:新的选择――SQL Server Express 2005"。SQL Server 2005是微软推出的一款强大的关系型数据库管理系统,旨在为企业级应用提供稳定、高效的数据存储和管理解决...

    Linq To Sql进阶系列

    - **映射概念**:Linq To Sql的核心之一在于它能够实现数据库表与.NET类之间的自动映射。这种映射方式极大地简化了开发过程中的数据访问层编写工作。 - **解决的问题**:传统.NET应用中,通常需要手动编写SQL语句来...

    PL/SQL 核心基础代码

    本资源"PL/SQL 核心基础代码"是针对PL/SQL初学者的一个宝贵资料集合,包含了一系列核心基础部分的代码实例,旨在帮助学习者更好地理解和掌握PL/SQL编程。 在PL/SQL中,主要涉及以下几个关键知识点: 1. **声明变量...

    SQLSERVER技术内幕系列2005-2008

    《SQLSERVER技术内幕系列2005-2008》是针对微软SQL Server数据库管理系统的一套详尽的技术指南,涵盖了从SQL Server 2005到2008的重要特性和技术。这套书籍以英文版的形式呈现,为IT专业人员提供了深入理解、使用和...

    SQL工具SqlDbx

    SqlDbx是一款强大的SQL工具,专为数据库管理和开发人员设计,提供了一系列实用的功能,使得数据库操作更为便捷高效。这款工具以其关键词提示和数据导入导出功能而受到用户的喜爱。 SqlDbx支持多种数据库系统,包括...

    SQL Server 2005 盛宴系列11-数据库工具

    首先,我们来关注SQL Server Management Studio (SSMS),这是SQL Server 2005的核心管理工具。SSMS提供了一个集成的环境,用于访问、配置、管理和开发SQL Server的所有组件。它包括了查询编辑器,支持T-SQL编写,...

    深入浅出SQL系列教程-新手入门篇

    ### 深入浅出SQL系列教程-新手入门篇 #### 一、SQL简介与应用场景 SQL(Structured Query Language)是一种用于管理关系数据库的标准语言。它不仅被广泛应用于各种数据库管理系统(DBMS),如MySQL、Oracle、...

    Sql server数据库操作核心代码

    在SQL Server数据库操作中,核心代码通常涉及到一系列用于创建、查询、更新和删除数据的关键语句,以及管理和优化数据库性能的技巧。以下是一些关键的知识点: 1. **SQL语言基础**:SQL(Structured Query Language...

    Microsoft SQL Server 2005 内幕故事系列教程.rar

    本教程通过四个专题,全面揭示了SQL Server 2005的强大功能和核心特性,旨在帮助读者深入理解并熟练掌握这一重要的数据库管理系统。 首先,"SQL Server 2005 预览.zip"部分介绍了SQL Server 2005的基础架构和主要...

    SQL_PLUS.rar_PLUS SQL_SQL_Plus_plus_sql plus

    2. **脚本执行**:SQL Plus支持创建SQL脚本文件(通常扩展名为.sql),在其中编写一系列SQL语句,然后一次性执行整个脚本,提高工作效率。 3. **格式化输出**:SQL Plus提供了一种方式来格式化查询结果,使其更易于...

    mybatis直接执行sql语句后续之一

    博客中提到的"后续之一"可能意味着这是一个系列文章,可能逐步深入讲解了如何在MyBatis中执行SQL的各个方面,如动态SQL的运用、事务控制、性能优化等。通过对这些知识点的理解和掌握,开发者能够更好地利用MyBatis...

    PB 9 执行 多行 SQL

    - SQL脚本文件通常包含一系列以分号`;`结尾的SQL语句。这种分隔符用于指示数据库引擎每一行的结束,以便执行下一条命令。 2. **PB9的数据窗口对象(DataWindow)**: - PowerBuilder的核心组件之一是数据窗口对象...

    SQLServer调优系列

    本文将围绕SQL Server调优系列文章展开,深入探讨从基础知识到高级技巧的一系列核心内容。 #### 二、SQL Server调优系列基础篇 ##### 1. 常用运算符总结 - **表扫描(Table Scan)**:当SQL Server需要获取表中的...

    SQL.Server.2005盛宴系列01_SQL.Server.2005产品简介

    本资源为"SQL Server 2005盛宴系列01 - SQL Server 2005产品简介",主要涵盖了该版本的主要特性和功能,旨在帮助用户理解和掌握SQL Server 2005的基础知识。 SQL Server 2005的发布标志着数据库技术的一个重要里程...

    SQLTracker安装包

    SQLTracker是一款专为Oracle数据库监控设计的工具,其安装包包含了一系列组件,便于用户在Windows环境中部署和使用。本文将详细介绍这些组件的功能及其在Oracle数据库管理中的重要性。 首先,`SQLTracker.chm` 文件...

    sqlserver和transcat sql

    总之,SQL Server是强大的数据库管理系统,而Transact-SQL是其核心语言,特别适合编写存储过程来实现复杂的数据库操作。了解和掌握这两者对于数据库管理员和开发人员来说至关重要,而相关的PDF文档资源则是学习和...

    SQL 实用系列经典教程+程序员的SQL金典(内部资料)

    4. 查询语言:这是SQL的核心,包括SELECT语句的使用,学会如何根据需求检索数据,如单表查询、连接查询、子查询、聚合函数和分组。 5. 视图:理解视图的概念,如何创建和使用视图来简化复杂查询或保护数据。 6. 存储...

    Go-Go-SQLBuilder是一个用于创建SQL语句的工具函数库

    1. **链式操作**:通过一系列的链式调用,如`Select()`, `From()`, `Where()`, `Join()`, `GroupBy()`, `Having()`, `OrderBy()`, 和 `Limit()`等,可以轻松构建各种类型的SQL语句。这种模式使得代码更加整洁,易于...

Global site tag (gtag.js) - Google Analytics