基本概念:
近些日子在学习数据库,操作数据库(MySQL)需要使用SQL,在此将笔记展示一下,希望能够对有这方面需求的技术朋友有所帮助,展示的为一些具体操作:
SOL学习(一、基本概念)
1、 SHOW TABLES 命令用于显示当前选定的 MySQL 数据库中的所有表。
2、 SHOW COLUMNS 显示有关给定表中的列的信息。
SHOW COLUMNS FROM customers(显示customers表的信息)
SHOW COLUMNS 显示每个表列的以下值:
Field:列名称
Type:列数据类型
Key:指示列是否被索引
Default:分配给列的默认值
Extra:可能包含任何有关给定列的附加信息
3、SELECT 语句用于从数据库中选取数据。
结果存储在结果表中,称为结果集。
查询可以从表中的所选列或所有列中检索信息。
要创建一个简单的 SELECT 语句,请从表中指定所需列的名称。
SQL SELECT 语句的语法:
SELECT column_list
FROM table_name
column_list:包含从中检索数据的一个或多个列。
table_name:是从中检索信息的表的名称
例如:SELECT FirstName FROM customers(查找Firstname这一列)
4、USE语句用于选择SQL模式中的任何现有数据库。
语法:
USE database_name;
SQL
数据库名称在RDBMS中必须是唯一的。
5、SQL 允许同时运行多个查询或命令。
下面的 SQL 语句从 “customers” 表中选择 “FirstName” 和 “City” 列:
SELECT FirstName FROM customers;
SELECT City FROM customers;
6、提示:记住用分号结束每个 SQL 语句,以表示语句是完整的并且可以被解释
7、SQL 不区分大小写。
以下语句是等效的,执行输出相同的结果:
select City from customers;
SELECT City FROM customers;
sElEct City From customers;
提示:通常的做法是用大写编写所有 SQL 命令
8、一个 SQL 语句可以放在一个或多个文本行上。另外,多个 SQL 语句可以组合在一个文本行上。
在 SQL 中,会忽略空格和换行。
例如,以下 SQL 语句是绝对正确的。
SELECT City
FROM customers;
但是,建议避免不必要的空格和空行。
9、如前面所述,SQL SELECT 语句从 SQL 数据库的表中检索记录。
你可以一次选择多个列,只需列出列名称,然后用逗号分隔。
SQL 语句如下所示:
SELECT FirstName, LastName, City
FROM customers;
提示:不要在最后一个列名后面加逗号。
10、要检索表中包含的所有信息,请在 SELECT 命令之后放置一个 *(星号),而不是单独输入每个列名。
下面的 SQL 语句选择 “customers” 表中的所有列:
SELECT * FROM customers;
在 SQL 中,*(星号)表示所有。
11、在表中,一个列可能会包含多个重复值,有时你也许希望仅仅列出不同的值。
DISTINCT 关键词用于返回唯一不同的值。
DISTINCT 关键字与 SELECT 结合使用,以去掉所有重复的记录,仅返回唯一的记录。
DISTINCT 关键字的基本语法如下:
SELECT DISTINCT column_name1, column_name2
FROM table_name;
(返回的结果中相同的值将会被删除)
12、LIMIT 关键字
默认情况下,将返回所有符合 SQL 语句中指定条件的结果。
但是,有时候我们只需要检索记录的一个子集。在 MySQL 中,这是通过使用 LIMIT 关键字来完成的。
LIMIT 关键字的语法如下:
SELECT column list
FROM table_name
LIMIT [number of records];
例如,我们可以从 “customers” 表中选择前 6 个记录。
SELECT ID, FirstName, LastName, City
FROM customers LIMIT 6;
(结果将返回前六行)
13、你也可以从特定的偏移量中选取一组记录。
在下面的例子中,我们从第三个位置开始选取四条记录:
SELECT ID, FirstName, LastName, City
FROM customers LIMIT 3, 4;
以上输出结果是从 ID4 开始,输出五行,而不是从 ID3 开始,这是因为 MySQL 是从零开始计数的,意味着第一行的偏移量是 0,而不是 1。
14、完全限定名称
在 SQL 中,你可以在列名之前提供表名,通过用点分隔。
以下语句是等效的:
SELECT City FROM customers;
SELECT customers.City FROM customers;
上述语法的术语称为该列的 “完全限定名称”。
当使用多个可能共享相同列名的表时,这种写法是特别有用的
15、Order By
ORDER BY 关键字用于对结果集进行排序。
下面的 SQL 语句从 “customers” 表中选取所有客户,并按照 “FirstName” 列排序:
SELECT * FROM customers
ORDER BY FirstName;
提示:ORDER BY 关键字默认按照升序(ASC)对记录进行排序。如果需要按照降序对记录进行排序,你可以使用 DESC 关键字。
16、多列排序
ORDER BY 关键字可用于对结果集按照多个列进行排序。将对多个列使用 ORDER BY 时,请使用逗号分隔列的列表以跟随 ORDER BY。
我们按 “LastName” 和 "Age" 列排序:
SELECT * FROM customers
ORDER BY LastName, Age;
ORDER BY 命令按照与列相同的顺序开始排序。它将按列出的第一列排序,然后按第二列排序,依此类推。