《锋利的SQL(第2版)》——第1章 SQL简介

简介:

第1章 SQL简介

锋利的SQL(第2版)
SQL的全称是结构化查询语言(Structured Query Language),是一种在关系数据库管理系统(Relational Database Management Systems,RDBMS)中查询和管理数据的标准语言。这是一种非常易读和易用的语言,只要稍微有一点英语基础,一些简单的数据查询、操作语句几乎都可以理解。但是,要想精通SQL,并不是一件很容易的事情,一是因为在数据处理方面有许许多多的个案,要处理好这些个案,除了具有缜密的逻辑思维,还需要多练习和实践;二是与其他编程语言相比,SQL是一种描述性语言,你只要说出想要什么结果,中间过程由数据库引擎去处理,其他编程语言则需要通过循环语句、判断语句等自己进行处理,如果出现什么问题,可以很快找到导致错误的语句,而对于SQL你就需要对寥寥几行的查询语句深入思考——数据库引擎为什么没有理解我的要求?所以说,数据库引擎的这种“封箱”操作给查找问题带来了麻烦,通常的解决方法就是将一个复杂语句拆解为几个简单语句,逐步验证中间结果的正确性,然后再重新组合为一条语句。从实际工作经验看,我不建议你写很复杂的语句来证明自己的高深,简单明了的语句对于后期的系统维护很有帮助,除非你的语句确实影响了处理效率。从本章开始,打好坚实的基础,并在此基础上不断提升自己的理论知识体系,当感受某个成功喜悦的时候,或许就会发现自己已经站在了SQL的巅峰。

本章我们将讲述一些最基本的SQL内容,如SQL的历史起源、ANSI是什么和一些基本的数据库理论,以及SQL的语法元素和执行SQL的工具等。基本知识学习起来可能比较枯燥。但是,如果你是初学SQL,这些基本知识对于学习好本书的后续内容却起着至关重要的作用。我也曾见过许多资深的数据库管理员会犯一些低级错误,一上午在不停地分析语句,最后却发现仅仅是“三值”逻辑问题。

本文仅用于学习和交流目的,不代表异步社区观点。非商业转载请注明作译者、出处,并保留本文的原始链接。

相关文章
|
7月前
|
SQL 关系型数据库 数据库
SQL Server 简介与 Docker Compose 部署
SQL Server 是由微软公司开发的一款强大的关系型数据库管理系统(RDBMS),广泛应用于企业级应用程序和数据存储。使用 Docker Compose,您可以轻松地将 SQL Server 实例部署到容器化环境中,并方便地进行数据库管理。在本文中,我将简要介绍 SQL Server 的基本概念,并详细阐述如何使用 Docker Compose 部署 SQL Server 容器。
242 2
SQL Server 简介与 Docker Compose 部署
|
8月前
|
SQL 存储 关系型数据库
MSSQL之一 数据库系统简介 与SQL Server 2008概述
MSSQL之一 数据库系统简介 与SQL Server 2008概述
86 0
|
3月前
|
SQL 关系型数据库 MySQL
MySQL技能完整学习列表3、SQL语言基础——1、SQL(Structured Query Language)简介——2、基本SQL语句:SELECT、INSERT、UPDATE、DELETE
MySQL技能完整学习列表3、SQL语言基础——1、SQL(Structured Query Language)简介——2、基本SQL语句:SELECT、INSERT、UPDATE、DELETE
55 0
|
7月前
|
SQL 存储 缓存
SQL语句简介
MySQL 基础架构分析 下图是 MySQL 的一个简要架构图,从下图你可以很清晰的看到用户的 SQL 语句在 MySQL 内部是如何执行的。 先简单介绍一下下图涉及的一些组件的基本作用帮助大家理解这幅图,在后面会详细介绍到这些组件的作用。 连接器: 身份认证和权限相关(登录 MySQL 的时候)。 查询缓存: 执行查询语句的时候,会先查询缓存(MySQL 8.0 版本后移除,因为这个功能不太实用)。 分析器: 没有命中缓存的话,SQL 语句就会经过分析器,分析器说白了就是要先看你的 SQL 语句要干嘛,再检查你的 SQL 语句语法是否正确。 优化器: 按照 MySQL 认为最优的方案去执
30 0
|
1月前
|
SQL 运维 数据管理
sql管理工具archery简介
Archery是一个多公司采用的SQL管理工具,提供权限管理、工作流配置、实例管理、SQL审核、查询、优化及通知功能。它支持多级审批和不同云环境的数据管理。尝试Archery的SaaS版本可访问[ArcheryDMS.com](https://archerydms.com/home/)。此外,NineData是一个综合平台,包含SQL开发、数据复制等功能,适应混合云和多云环境,由叶正盛创建,详情见[Ninedata.cloud](https://www.ninedata.cloud/aboutus)。
69 0
|
2月前
|
SQL Oracle 关系型数据库
通用SQL数据库查询语句精华使用简介
通用SQL数据库查询语句精华使用简介
|
7月前
|
SQL 关系型数据库 数据库
关系数据库SQL语言简介
一、关系数据库SQL语言简介 SQL(Structured Query Language)是关系型数据库管理系统(RDBMS)中最常用的语言。它是一种标准化的语言,用于存储、操作和查询数据。SQL语言具有以下特点: 1. 数据操作语言(DML):用于对数据库中的数据进行增、删、改等操作,包括INSERT、UPDATE、DELETE等命令。 2. 数据定义语言(DDL):用于定义数据库的结构,包括表、字段、索引、视图等,包括CREATE、ALTER、DROP等命令。 3. 数据查询语言(DQL):用于查询数据库中的数据,包括SELECT、FROM、WHERE等命令。 4. 数据控制语言(DCL)
195 0
|
7月前
|
SQL 数据管理 数据库
关系数据库SQL语言简介
关系数据库SQL语言简介 一、SQL语言概述 SQL(Structured Query Language)是一种用于管理和操作关系数据库的语言。它是数据库管理系统(DBMS)的核心组成部分,用于定义、操作和查询数据库中的数据。SQL语言是一种标准化的语言,由美国国家标准局(ANSI)和国际标准化组织(ISO)制定和维护。 SQL语言具有简洁、易学、易用的特点,被广泛应用于各个领域的数据管理和应用开发中。通过SQL语言,用户可以使用简单的语句来完成复杂的数据查询、更新、删除等操作,实现对数据库的全面管理和控制。 SQL语言主要包括以下几个方面的内容: 1. 数据定义语言(DDL):用于
63 0
|
4月前
|
SQL JSON 分布式计算
Spark SQL简介与基本用法
Spark SQL简介与基本用法
|
4月前
|
XML Java 数据库连接
Mybatis之简介、使用操作(安装、XML、SqlSession、映射的SQL语句、命名空间、作用域和生命周期)
【1月更文挑战第2天】 MyBatis 是一款优秀的持久层框架 MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集的过程 MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 实体类 【Plain Old Java Objects,普通的 Java对象】映射成数据库中的记录。
113 2
Mybatis之简介、使用操作(安装、XML、SqlSession、映射的SQL语句、命名空间、作用域和生命周期)