SQL学习笔记1:基本概念
作者:xxw9485
时间:2018/1/16
来源:W3Cschool的SQL微课
数据库介绍
数据库
- 数据库是以便于访问、有效管理和更新的方式组织的数据集合。
- 数据库由存储相关信息的表组成。
例如,如果你想要创建一个简单的博客项目,其中包含信息如用户名、日志、日志分类,你将需要使用数据库创建三张表,分别为用户表、日志表、日志分类表。
数据库表
- 数据库表以结构化的格式存储和显示数据,由行和列组成,类似于 Excel。
- 一个数据库通常包含一个或多个表,每个表都为特定目的而设计。 例如,创建一个名称和电话号码的数据库表。
主键(PRIMARY KEY)
- 主键(PRIMARYKEY)是表中唯一标识表记录的字段。
- 主键必须包含唯一的值。主键列不能包含 NULL 值。
- 每个表都应该有一个主键,并且每个表只能有一个主键。例如,在下面的表中,唯一的 ID 号将是表中主键的最佳选择,因为总有多个人具有相同名称的时候。
SQL含义
- SQL,指结构化查询语言,全称是 Structured Query Language。
- SQL 是用于访问和处理数据库的标准的计算机语言。
- SQL 可以: 创建新的数据库、表、存储过程和视图;
在数据库中插入、更新、删除记录;
从数据库中检索数据等。
SQL SELECT
SQL SHOW
SQL SHOW 语句显示数据库及其表中包含的信息
例如,SHOW DATABASES 命令列出了服务器管理的数据库。
SHOW TABLES
SHOW TABLES 命令用于显示当前选定的 MySQL 数据库中的所有表。
SHOW COLUMNS
SHOW COLUMNS 显示有关给定表中的列的信息。
例如显示 “customers” 表中的列:
SHOW COLUMNS FROM customers
SELECT 语句
SELECT 语句用于从数据库中选取数据。
SQL SELECT 语句的语法如下:
SELECT column_list
FROM table_name
column_list:包含从中检索数据的一个或多个列。
table_name:是从中检索信息的表的名称。
SQL 语法规则
多个查询
SQL 允许同时运行多个查询或命令。
例如从 “customers” 表中查询 “FirstName” 和 “City” 列:
SELECT FirstName FROM customers;
SELECT City FROM customers;
注意:每个 SQL 语句以“;”结束。
大小写
SQL 不区分大小写,不过通常关键字均为大写。
语法规则
SQL 会忽略空格和换行。故一个 SQL 语句可以放在一行或多行上。同时,多个 SQL 语句也可以组合在一行上。但是,建议避免不必要的空格和空行。
多列查询
多列查询
SQL SELECT 语句从 SQL 数据库的表中检索记录。
你可以一次选择多个列,只需列出列名称,然后用逗号分隔。例如:
SELECT FirstName, LastName, City
FROM customers;
所有列查询
在 SELECT 命令之后放置一个 *(星号),就可以检索表中包含的所有信息。
例如查询 “customers” 表中的所有列:
SELECT * FROM customers;
DISTINCT 和 LIMIT
DISTINCT 关键字
- DISTINCT 关键词用于返回唯一不同的值。
- DISTINCT 关键字与 SELECT 结合使用,以去掉所有重复的记录,仅返回唯一的记录。
- DISTINCT 关键字的基本语法如下:
SELECT DISTINCT column_name1, column_name2
FROM table_name;
LIMIT 关键字
在 MySQL 中,可以通过使用 LIMIT 关键字来查找指定条件的一个子集。
LIMIT 关键字的语法如下:
SELECT column list
FROM table_name
LIMIT [number of records];
例如,我们可以从 “customers” 表中选择前 6 个记录。
SELECT ID, FirstName, LastName, City
FROM customers LIMIT 6;
我们还可以从 “customers” 表中第三行开始选取四条记录。
SELECT ID, FirstName, LastName, City
FROM customers LIMIT 3, 4;
排序结果
完全限定名称
“完全限定名称”指在列名之前提供表名,通过用点分隔。常用于多个表使用同一个列名的情况。下列两个语句是等效的:
SELECT City FROM customers;
SELECT customers.City FROM customers;
ORDER BY
ORDER BY 关键字用于对结果集进行排序。
例如从 “customers” 表中选取所有客户,并按照 “FirstName” 列排序:
SELECT * FROM customers
ORDER BY FirstName;
注意:ORDER BY 关键字默认按照升序(ASC)对记录进行排序。如果需要按照降序对记录进行排序,则添加 DESC 关键字。
多列排序
ORDER BY 关键字可对数据按照多个列进行排序。多个列之间用逗号隔开。例如在 “customers” 表中按 “LastName” 和 “Age” 列排序:
SELECT * FROM customers
ORDER BY LastName, Age;
上一篇: nginx配置404页面