设为首页 加入收藏

TOP

SQL(二)
2015-11-21 01:42:38 来源: 作者: 【 】 浏览:1
Tags:SQL
size) smallint(size) tinyint(size) 仅容纳整数。在括号内规定数字的最大位数。 decimal(size,d) numeric(size,d) 容纳带有小数的数字。 "size" 规定数字的最大位数。"d" 规定小数点右侧的最大位数。 char(size) 容纳固定长度的字符串(可容纳字母、数字以及特殊字符)。 在括号中规定字符串的长度。 varchar(size) 容纳可变长度的字符串(可容纳字母、数字以及特殊的字符)。 在括号中规定字符串的最大长度。 date(yyyymmdd) 容纳日期。

NOT NULL 约束

NOT NULL 约束强制列不接受 NULL 值。
NOT NULL 约束强制字段始终包含值。这意味着,如果不向字段添加值,就无法插入新记录或者更新记录。

PRIMARY KEY 约束

PRIMARY KEY 约束唯一标识数据库表中的每条记录。
主键必须包含唯一的值。
主键列不能包含 NULL 值。
每个表都应该有一个主键,并且每个表只能有一个主键。

下面的 SQL 在 “Persons” 表创建时在 “Id_P” 列创建 PRIMARY KEY 约束:

CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
PRIMARY KEY (Id_P)
)

FOREIGN KEY 约束

一个表中的 FOREIGN KEY 指向另一个表中的 PRIMARY KEY。

CHECK 约束

CHECK 约束用于限制列中的值的范围。

下面的 SQL 在 “Persons” 表创建时为 “Id_P” 列创建 CHECK 约束。CHECK 约束规定 “Id_P” 列必须只包含大于 0 的整数。

CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CHECK (Id_P>0)
)

DEFAULT 约束

DEFAULT 约束用于向列中插入默认值

下面的 SQL 在 “Persons” 表创建时为 “City” 列创建 DEFAULT 约束:

CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255) DEFAULT 'Sandnes'
)

CREATE INDEX 语句

CREATE INDEX 语句用于在表中创建索引。
在不读取整个表的情况下,索引使数据库应用程序可以更快地查找数据。

您可以在表中创建索引,以便更加快速高效地查询数据。
用户无法看到索引,它们只能被用来加速搜索/查询。
注释:更新一个包含索引的表需要比更新一个没有索引的表更多的时间,这是由于索引本身也需要更新。因此,理想的做法是仅仅在常常被搜索的列(以及表)上面创建索引。

在表上创建一个简单的索引。允许使用重复的值:

CREATE INDEX index_name
ON table_name (column_name) 可以有多个column

在表上创建一个唯一的索引。唯一的索引意味着两个行不能拥有相同的索引值。

CREATE UNIQUE INDEX index_name
ON table_name (column_name1,column_name2)

DROP

DROP 语句,可以轻松地删除索引、表和数据库。

使用 DROP INDEX 命令删除表格中的索引。

DROP INDEX index_name ON table_name

DROP TABLE 语句用于删除表(表的结构、属性以及索引也会被删除)

DROP TABLE 表名称

DROP DATABASE 语句用于删除数据库:

DROP DATABASE 数据库名称

ALTER TABLE 语句

如需在表中添加列,请使用下列语法:

ALTER TABLE table_name
ADD column_name datatype

要删除表中的列,请使用下列语法

ALTER TABLE table_name 
DROP COLUMN column_name

要改变表中列的数据类型,请使用下列语法:

ALTER TABLE table_name
ALTER COLUMN column_name datatype

Date 函数

NULL 值

NULL 值是遗漏的未知数据。
默认地,表的列可以存放 NULL 值。
IS NULL 和 IS NOT NULL 操作符。

SQL 服务器 - RDBMS

现代的 SQL 服务器构建在 RDBMS 之上。

DBMS - 数据库管理系统(Database Management System)

数据库管理系统是一种可以访问数据库中数据的计算机程序。
DBMS 使我们有能力在数据库中提取、修改或者存贮信息。
不同的 DBMS 提供不同的函数供查询、提交以及修改数据。

RDBMS - 关系数据库管理系统(Relational Database Management System)

关系数据库管理系统 (RDBMS) 也是一种数据库管理系统,其数据库是根据数据间的关系来组织和访问数据的。
20 世纪 70 年代初,IBM 公司发明了 RDBMS。
RDBMS 是 SQL 的基础,也是所有现代数据库系统诸如 Oracle、SQL Server、IBM DB2、Sybase、MySQL 以及 Microsoft Access 的基础。

SQL 函数

SQL 拥有很多可用于计数和计算的内建函数。

内建 SQL 函数的语法是:

SELECT function(列) FROM 表
AVG 函数

AVG 函数返回数值列的平均值。NULL 值不包括在计算中。

SELECT AVG(column_name) FROM table_name
COUNT() 函数

COUNT() 函数返回匹配指定条件的行数,NULL 不计入。

SELECT COUNT(column_name) FROM table_name

SQL COUNT(*) 语法返回表中的记录数:

SELECT COUNT(*) FROM table_name

COUNT(DISTINCT column_name) 语法返回指定列的不同值的数目:

SELECT COUNT(DISTINCT column_name) FROM table_name
FIRST() 函数

FIRST() 函数返回指定的字段中第一个记录的值。

SELECT FIRST(column_name) FROM table_name
LAST() 函数

LAST() 函数返回指定的字段中最后一个记录的值。

SELECT LAST(column_name) FROM table_name
MAX() 函数、MIN() 函数

返回一列中的最大、小值。NULL 值不包括在计算中。

SELECT MIN(column_name) FROM table_name
SUM() 函数

SUM 函数返回数值列的总数(总额)。

SELECT SUM(column_name) FROM table_name
GROUP BY 语句

GROUP BY

首页 上一页 1 2 3 下一页 尾页 2/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇为什么GI的Rebootless Fencing会.. 下一篇sqlserver中的CASE用法

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: