SQL高级教程
搬砖的魅力
每天逼着自己写点东西,终有一天会为自己的变化感动的。这是一个潜移默化的过程,每天坚持编编故事,自己不知不觉就会拥有故事人物的特质的。 Explicit is better than implicit.(清楚优于含糊)
展开
-
SQL高级教程(三十一)- - SQL 数据类型
Microsoft Access、MySQL 以及 SQL Server 所使用的数据类型和范围。Microsoft Access 数据类型数据类型 描述 存储 Text 用于文本或文本与数字的组合。最多 255 个字符。 Memo Memo 用于更大数量的文本。最多存储 65,536 个字符。 注释:无法对 memo 字段进行排序...原创 2019-12-31 08:57:56 · 119 阅读 · 0 评论 -
SQL高级教程(三十)- - SQL NULL 函数
SQL ISNULL()、NVL()、IFNULL() 和 COALESCE() 函数请看下面的 "Products" 表:P_Id ProductName UnitPrice UnitsInStock UnitsOnOrder 1 computer 699 25 15 2 printer 365 36 ...原创 2019-12-30 09:26:27 · 185 阅读 · 0 评论 -
SQL高级教程(二十九)- - SQL NULL 值
NULL 值是遗漏的未知数据。默认地,表的列可以存放 NULL 值。本章讲解 IS NULL 和 IS NOT NULL 操作符。SQL NULL 值如果表中的某个列是可选的,那么我们可以在不向该列添加值的情况下插入新记录或更新已有的记录。这意味着该字段将以 NULL 值保存。NULL 值的处理方式与其他值不同。NULL 用作未知的或不适用的值的占位符。注释:无法比较 ...原创 2019-12-29 21:24:37 · 179 阅读 · 0 评论 -
SQL高级教程(二十八)- - SQL Date 函数
SQL 日期当我们处理日期时,最难的任务恐怕是确保所插入的日期的格式,与数据库中日期列的格式相匹配。只要数据包含的只是日期部分,运行查询就不会出问题。但是,如果涉及时间,情况就有点复杂了。在讨论日期查询的复杂性之前,我们先来看看最重要的内建日期处理函数。MySQL Date 函数下面的表格列出了 MySQL 中最重要的内建日期函数:函数 描述 NOW() 返...原创 2019-12-27 09:15:55 · 231 阅读 · 0 评论 -
SQL高级教程(二十七)- - SQL VIEW(视图)
视图是可视化的表。本章讲解如何创建、更新和删除视图。SQL CREATE VIEW 语句什么是视图?在 SQL 中,视图是基于 SQL 语句的结果集的可视化的表。视图包含行和列,就像一个真实的表。视图中的字段就是来自一个或多个数据库中的真实的表中的字段。我们可以向视图添加 SQL 函数、WHERE 以及 JOIN 语句,我们也可以提交数据,就像这些来自于某个单一的表。注释:...原创 2019-12-25 09:04:02 · 224 阅读 · 0 评论 -
SQL高级教程(二十六)- - SQL AUTO INCREMENT 字段
Auto-increment 会在新记录插入表中时生成一个唯一的数字。AUTO INCREMENT 字段我们通常希望在每次插入新记录时,自动地创建主键字段的值。我们可以在表中创建一个 auto-increment 字段。用于 MySQL 的语法下列 SQL 语句把 "Persons" 表中的 "P_Id" 列定义为 auto-increment 主键:CREATE TAB...原创 2019-12-16 08:47:20 · 211 阅读 · 0 评论 -
SQL高级教程(二十五)- - SQL ALTER TABLE 语句
ALTER TABLE 语句ALTER TABLE 语句用于在已有的表中添加、修改或删除列。SQL ALTER TABLE 语法如需在表中添加列,请使用下列语法:ALTER TABLE table_nameADD column_name datatype要删除表中的列,请使用下列语法:ALTER TABLE table_name DROP COLUMN column...原创 2019-12-11 09:02:49 · 352 阅读 · 1 评论 -
SQL高级教程(二十四)- - SQL 撤销索引、表以及数据库
通过使用 DROP 语句,可以轻松地删除索引、表和数据库。SQL DROP INDEX 语句我们可以使用 DROP INDEX 命令删除表格中的索引。用于 Microsoft SQLJet (以及 Microsoft Access) 的语法:DROP INDEX index_name ON table_name用于 MS SQL Server 的语法:DROP INDE...原创 2019-12-10 09:24:20 · 183 阅读 · 0 评论 -
SQL高级教程(二十三)- - SQL CREATE INDEX 语句
CREATE INDEX 语句用于在表中创建索引。在不读取整个表的情况下,索引使数据库应用程序可以更快地查找数据。索引您可以在表中创建索引,以便更加快速高效地查询数据。用户无法看到索引,它们只能被用来加速搜索/查询。注释:更新一个包含索引的表需要比更新一个没有索引的表更多的时间,这是由于索引本身也需要更新。因此,理想的做法是仅仅在常常被搜索的列(以及表)上面创建索引。SQL...原创 2019-12-06 09:20:16 · 141 阅读 · 0 评论 -
SQL高级教程(二十二)- - SQL DEFAULT 约束
SQL DEFAULT 约束DEFAULT 约束用于向列中插入默认值。如果没有规定其他的值,那么会将默认值添加到所有的新记录。SQL DEFAULT Constraint on CREATE TABLE下面的 SQL 在 "Persons" 表创建时为 "City" 列创建 DEFAULT 约束:My SQL / SQL Server / Oracle / MS Access:...原创 2019-12-05 09:00:41 · 190 阅读 · 0 评论 -
SQL高级教程(二十一)- - SQL CHECK 约束
SQL CHECK 约束CHECK 约束用于限制列中的值的范围。如果对单个列定义 CHECK 约束,那么该列只允许特定的值。如果对一个表定义 CHECK 约束,那么此约束会在特定的列中对值进行限制。SQL CHECK Constraint on CREATE TABLE下面的 SQL 在 "Persons" 表创建时为 "Id_P" 列创建 CHECK 约束。CHECK 约束规...原创 2019-12-04 16:35:55 · 473 阅读 · 0 评论 -
SQL高级教程(二十)- - SQL FOREIGN KEY 约束
SQL FOREIGN KEY 约束一个表中的 FOREIGN KEY 指向另一个表中的 PRIMARY KEY。让我们通过一个例子来解释外键。请看下面两个表:"Persons" 表:Id_P LastName FirstName Address City 1 Adams John Oxford Street London 2...原创 2019-12-04 09:43:28 · 336 阅读 · 0 评论 -
SQL高级教程(十九)- - SQL PRIMARY KEY 约束
SQL PRIMARY KEY 约束PRIMARY KEY 约束唯一标识数据库表中的每条记录。主键必须包含唯一的值。主键列不能包含 NULL 值。每个表都应该有一个主键,并且每个表只能有一个主键。SQL PRIMARY KEY Constraint on CREATE TABLE下面的 SQL 在 "Persons" 表创建时在 "Id_P" 列创建 PRIMARY KEY...原创 2019-12-03 18:33:00 · 326 阅读 · 0 评论 -
SQL高级教程(十八)- - SQL UNIQUE 约束
SQL UNIQUE 约束UNIQUE 约束唯一标识数据库表中的每条记录。UNIQUE 和 PRIMARY KEY 约束均为列或列集合提供了唯一性的保证。PRIMARY KEY 拥有自动定义的 UNIQUE 约束。请注意,每个表可以有多个 UNIQUE 约束,但是每个表只能有一个 PRIMARY KEY 约束。SQL UNIQUE Constraint on CREATE TA...原创 2019-12-03 16:46:02 · 264 阅读 · 0 评论 -
SQL高级教程(七) - - SQL JOIN
SQL join 用于根据两个或多个表中的列之间的关系,从这些表中查询数据。Join 和 Key有时为了得到完整的结果,我们需要从两个或更多的表中获取结果。我们就需要执行 join。数据库中的表可通过键将彼此联系起来。主键(Primary Key)是一个列,在这个列中的每一行的值都是唯一的。在表中,每个主键的值都是唯一的。这样做的目的是在不重复每个表中的所有数据的情况下,把表间的数据交...原创 2019-11-11 19:55:33 · 135 阅读 · 0 评论 -
SQL高级教程(十七) - - SQL NOT NULL 约束
SQL NOT NULL 约束NOT NULL 约束强制列不接受 NULL 值。NOT NULL 约束强制字段始终包含值。这意味着,如果不向字段添加值,就无法插入新记录或者更新记录。下面的 SQL 语句强制 "Id_P" 列和 "LastName" 列不接受 NULL 值:CREATE TABLE Persons(Id_P int NOT NULL,LastName va...原创 2019-12-02 08:58:15 · 171 阅读 · 0 评论 -
SQL高级教程(十六) - - SQL 约束 (Constraints)
SQL 约束约束用于限制加入表的数据的类型。可以在创建表时规定约束(通过 CREATE TABLE 语句),或者在表创建之后也可以(通过 ALTER TABLE 语句)。我们将主要探讨以下几种约束:NOT NULL UNIQUE PRIMARY KEY FOREIGN KEY CHECK DEFAULT注释:在下面的章节,我们会详细讲解每一种约束。...原创 2019-12-02 08:56:12 · 119 阅读 · 0 评论 -
SQL高级教程(十五) - - SQL CREATE TABLE 语句
CREATE TABLE 语句CREATE TABLE 语句用于创建数据库中的表。SQL CREATE TABLE 语法CREATE TABLE 表名称(列名称1 数据类型,列名称2 数据类型,列名称3 数据类型,....)数据类型(data_type)规定了列可容纳何种数据类型。下面的表格包含了SQL中最常用的数据类型:数据类型 描述 inte...原创 2019-11-22 09:38:31 · 298 阅读 · 0 评论 -
SQL高级教程(十四) - - SQL CREATE DATABASE 语句
CREATE DATABASE 语句CREATE DATABASE 用于创建数据库。SQL CREATE DATABASE 语法CREATE DATABASE database_nameSQL CREATE DATABASE 实例现在我们希望创建一个名为 "my_db" 的数据库。我们使用下面的 CREATE DATABASE 语句:CREATE DATABASE ...原创 2019-11-21 09:05:42 · 209 阅读 · 0 评论 -
SQL高级教程(十三) - - SQL SELECT INTO 语句
SQL SELECT INTO 语句可用于创建表的备份复件。SELECT INTO 语句SELECT INTO 语句从一个表中选取数据,然后把数据插入另一个表中。SELECT INTO 语句常用于创建表的备份复件或者用于对记录进行存档。SQL SELECT INTO 语法您可以把所有的列插入新表:SELECT *INTO new_table_name [IN exter...原创 2019-11-18 09:18:47 · 207 阅读 · 0 评论 -
SQL高级教程(十二) - - SQL UNION 和 UNION ALL 操作符
SQL UNION 操作符UNION 操作符用于合并两个或多个 SELECT 语句的结果集。请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同。SQL UNION 语法SELECT column_name(s) FROM table_name1UNIONSELECT column_...原创 2019-11-16 11:59:18 · 144 阅读 · 0 评论 -
SQL高级教程(十一) - - SQL FULL JOIN 关键字
SQL FULL JOIN 关键字只要其中某个表存在匹配,FULL JOIN 关键字就会返回行。FULL JOIN 关键字语法SELECT column_name(s)FROM table_name1FULL JOIN table_name2 ON table_name1.column_name=table_name2.column_name注释:在某些数据库中, FULL...原创 2019-11-14 19:51:23 · 189 阅读 · 0 评论 -
SQL高级教程(一) - - SQL TOP 子句
TOP 子句TOP 子句用于规定要返回的记录的数目。对于拥有数千条记录的大型表来说,TOP 子句是非常有用的。注释:并非所有的数据库系统都支持 TOP 子句。SQL Server 的语法:SELECT TOP number|percent column_name(s) FROM table_nameMySQL 和 Oracle 中的 SQL SELECT TOP 是等价的...原创 2019-11-04 18:50:54 · 206 阅读 · 0 评论 -
SQL高级教程(二) - - SQL LIKE 操作符
LIKE 操作符用于在 WHERE 子句中搜索列中的指定模式。LIKE 操作符LIKE 操作符用于在 WHERE 子句中搜索列中的指定模式。SQL LIKE 操作符语法SELECT column_name(s) FROM table_name WHERE column_name LIKE pattern原始的表 (用在例子中的):Persons 表:Id Las...原创 2019-11-05 09:30:05 · 131 阅读 · 0 评论 -
SQL高级教程(三) - - SQL 通配符
在搜索数据库中的数据时,您可以使用 SQL 通配符。SQL 通配符在搜索数据库中的数据时,SQL 通配符可以替代一个或多个字符。SQL 通配符必须与 LIKE 运算符一起使用。在 SQL 中,可使用以下通配符:通配符 描述 % 替代一个或多个字符 _ 仅替代一个字符 [charlist] 字符列中的任何单一字符 [^charlis...原创 2019-11-05 16:01:41 · 182 阅读 · 0 评论 -
SQL高级教程(四) - - SQL IN 操作符
IN 操作符IN 操作符允许我们在 WHERE 子句中规定多个值。SQL IN 语法SELECT column_name(s) FROM table_name WHERE column_name IN (value1,value2,...)原始的表 (在实例中使用:)Persons 表:Id LastName FirstName Address C...原创 2019-11-06 09:18:17 · 198 阅读 · 0 评论 -
SQL高级教程(五) - - SQL BETWEEN 操作符
BETWEEN 操作符在 WHERE 子句中使用,作用是选取介于两个值之间的数据范围。BETWEEN 操作符操作符 BETWEEN ... AND 会选取介于两个值之间的数据范围。这些值可以是数值、文本或者日期。SQL BETWEEN 语法SELECT column_name(s) FROM table_name WHERE column_name BETWEEN value1 ...原创 2019-11-07 21:40:56 · 130 阅读 · 0 评论 -
SQL高级教程(六) - - SQL Alias(别名)
通过使用 SQL,可以为列名称和表名称指定别名(Alias)。SQL Alias表的 SQL Alias 语法SELECT column_name(s) FROM table_name AS alias_name列的 SQL Alias 语法SELECT column_name AS alias_name FROM table_nameAlias 实例: 使用表名称别名...原创 2019-11-08 09:14:21 · 350 阅读 · 0 评论 -
SQL高级教程(八) - - SQL INNER JOIN 关键字
SQL INNER JOIN 关键字在表中存在至少一个匹配时,INNER JOIN 关键字返回行。INNER JOIN 关键字语法SELECT column_name(s) FROM table_name1 INNER JOIN table_name2 ON table_name1.column_name=table_name2.column_name注释:INNER JOIN...原创 2019-11-12 19:49:43 · 184 阅读 · 0 评论 -
SQL高级教程(九) - - SQL LEFT JOIN 关键字
SQL LEFT JOIN 关键字LEFT JOIN 关键字会从左表 (table_name1) 那里返回所有的行,即使在右表 (table_name2) 中没有匹配的行。LEFT JOIN 关键字语法SELECT column_name(s) FROM table_name1 LEFT JOIN table_name2 ON table_name1.column_name=t...原创 2019-11-13 09:23:10 · 171 阅读 · 1 评论 -
SQL高级教程(十) - - SQL RIGHT JOIN 关键字
SQL RIGHT JOIN 关键字RIGHT JOIN 关键字会右表 (table_name2) 那里返回所有的行,即使在左表 (table_name1) 中没有匹配的行。RIGHT JOIN 关键字语法SELECT column_name(s)FROM table_name1RIGHT JOIN table_name2 ON table_name1.column_name=...原创 2019-11-14 09:21:24 · 98 阅读 · 0 评论