SQL入门教程(非常详细)从零基础入门到精通,看完这一篇就够了 您所在的位置:网站首页 oracle11g从入门到精通 SQL入门教程(非常详细)从零基础入门到精通,看完这一篇就够了

SQL入门教程(非常详细)从零基础入门到精通,看完这一篇就够了

2023-10-04 15:49| 来源: 网络整理| 查看: 265

导读: SQL语言有40多年的历史,从它被应用至今几乎无处不在。我们消费的每一笔支付记录,收集的每一条用户信息,发出去的每一条消息,都会使用数据库或与其相关的产品来存储,而操纵数据库的语言正是 SQL !

SQL 对于现在的互联网公司生产研发等岗位几乎是一个必备技能,如果不会 SQL 的话,可能什么都做不了。你可以把 SQL 当做是一种工具,利用它可以帮助你完成你的工作,创造价值。

01 SQL 介绍

1. 什么是 SQL

SQL 是用于访问和处理数据库的标准的计算机语言。

SQL 指结构化查询语言

SQL 使我们有能力访问数据库

SQL 是一种 ANSI 的标准计算机语言

SQL 可与数据库程序协同工作,比如 MS Access、DB2、Informix、MS SQL Server、Oracle、Sybase 以及其他数据库系统。

但是由于各种各样的数据库出现,导致很多不同版本的 SQL 语言。

为了与 ANSI 标准相兼容,它们必须以相似的方式共同地来支持一些主要的关键词(比如 SELECT、UPDATE、DELETE、INSERT、WHERE 等等),这些就是我们要学习的SQL基础。

2. SQL 的类型

可以把 SQL 分为两个部分:数据操作语言 (DML) 和 数据定义语言 (DDL)。

数据查询语言(DQL: Data Query Language)

数据操纵语言(DML:Data Manipulation Language)

3. 学习 SQL 的作用

SQL 是一门 ANSI 的标准计算机语言,用来访问和操作数据库系统。SQL 语句用于取回和更新数据库中的数据。

SQL 面向数据库执行查询

SQL 可从数据库取回数据

SQL 可在数据库中插入新的记录

SQL 可更新数据库中的数据

SQL 可从数据库删除记录

SQL 可创建新数据库

SQL 可在数据库中创建新表

SQL 可在数据库中创建存储过程

SQL 可在数据库中创建视图

SQL 可以设置表、存储过程和视图的权限

4. 数据库是什么

顾名思义,你可以理解为数据库是用来存放数据的一个容器。

打个比方,每个人家里都会有冰箱,冰箱是用来干什么的?冰箱是用来存放食物的地方。

同样的,数据库是存放数据的地方。正是因为有了数据库后,我们可以直接查找数据。

例如你每天使用余额宝查看自己的账户收益,就是从数据库读取数据后给你的。

最常见的数据库类型是关系型数据库管理系统(RDBMS):

RDBMS 是 SQL 的基础,同样也是所有现代数据库系统的基础,比如:

MS SQL Server

IBM DB2

Oracle

MySQL

Microsoft Access

RDBMS 中的数据存储在被称为表(tables)的数据库对象中。表 是相关的数据项的集合,它由列和行组成。

由于本文主要讲解 SQL 基础,因此对数据库不做过多解释,只需要大概了解即可。

咱们直接开始学习SQL!

02 SQL 基础语言学习

在了解 SQL 基础语句使用之前,我们先讲一下 表 是什么?

一个数据库通常包含一个或多个表。每个表由一个名字标识(例如“客户”或者“订单”)。表包含带有数据的记录(行)。

下面的例子是一个名为 “Persons” 的表:

IdLastNameFirstNameAddressCity1AdamsJohnOxford StreetLondon2BushGeorgeFifth AvenueNew York3CarterThomasChangan StreetBeijing

上面的表包含三条记录(每一条对应一个人)和五个列(Id、姓、名、地址和城市)。

有表才能查询,那么如何创建这样一个表?

1. CREATE TABLE – 创建表

CREATE TABLE 语句用于创建数据库中的表。

语法:

CREATE TABLE 表名称 ( 列名称1 数据类型, 列名称2 数据类型, 列名称3 数据类型, .... );

数据类型(data_type)规定了列可容纳何种数据类型。下面的表格包含了SQL中最常用的数据类型:

数据类型描述integer(size),int(size),smallint(size),tinyint(size)仅容纳整数、在括号内规定数字的最大位数decimal(size,d),numeric(size,d)容纳带有小数的数字、“size” 规定数字的最大位数、“d” 规定小数点右侧的最大位数char(size)容纳固定长度的字符串(可容纳字母、数字以及特殊字符)、在括号中规定字符串的长度varchar(size)容纳可变长度的字符串(可容纳字母、数字以及特殊的字符)、在括号中规定字符串的最大长度date(yyyymmdd)容纳日期

实例:

本例演示如何创建名为 “Persons” 的表。

该表包含 5 个列,列名分别是:“Id_P”、“LastName”、“FirstName”、“Address” 以及 “City”:

CREATE TABLE Persons ( Id_P int, LastName varchar(255), FirstName varchar(255), Address varchar(255), City varchar(255) );

Id_P 列的数据类型是 int,包含整数。其余 4 列的数据类型是 varchar,最大长度为 255 个字符。

空的 “Persons” 表类似这样:

可使用 INSERT INTO 语句向空表写入数据。

2. INSERT – 插入数据

INSERT INTO 语句用于向表格中插入新的行。

语法:

INSERT INTO 表名称 VALUES (值1, 值2,....); 我们也可以指定所要插入数据的列: INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....);

实例:

本例演示 “Persons” 表插入记录的两种方式:

1)插入新的行

INSERT INTO Persons VALUES (1, 'Gates', 'Bill', 'Xuanwumen 10', 'Beijing');

2)在指定的列中插入数据

INSERT INTO Persons (LastName, Address) VALUES ('Wilson', 'Champs-Elysees');

插入成功后,数据如下:

这个数据插入之后,是通过 SELECT 语句进行查询出来的,别急马上讲!

3. SELECT – 查询数据

SELECT 语句用于从表中选取数据,结果被存储在一个结果表中(称为结果集)。

语法:

SELECT * FROM 表名称;

我们也可以指定所要查询数据的列:

SELECT 列名称 FROM 表名称;

注意:

SQL 语句对大小写不敏感,SELECT 等效于 select。

实例:

SQL SELECT * 实例:

SELECT * FROM Persons;

注意:

星号(*)是选取所有列的快捷方式。

如需获取名为 “LastName” 和 “FirstName” 的列的内容(从名为 “Persons” 的数据库表),请使用类似这样的 SELECT 语句:

SELECT LastName,FirstName FROM Persons;

4. DISTINCT – 去除重复值

如果一张表中有多行重复数据,如何去重显示呢?可以了解下 DISTINCT 。

语法:

SELECT DISTINCT 列名称 FROM 表名称;

实例:

如果要从 “LASTNAME” 列中选取所有的值,我们需要使用 SELECT 语句:

SELECT LASTNAME FROM Persons;

可以发现,在结果集中,Wilson 被列出了多次。

如需从 “LASTNAME” 列中仅选取唯一不同的值,我们需要使用 SELECT DISTINCT 语句:

SELECT DISTINCT LASTNAME FROM Persons;

通过上述查询,结果集中只显示了一列 Wilson,显然已经去除了重复列。

5. WHERE – 条件过滤

如果需要从表中选取指定的数据,可将 WHERE 子句添加到 SELECT 语句。

语法:

SELECT 列名称 FROM 表名称 WHERE 列 运算符 值;

下面的运算符可在 WHERE 子句中使用:

操作符描述=等于不等于>大于=大于等于


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有