SQL学习记录1

2017-07-20  本文已影响0人  行有余

--文本字段 vs. 数值字段
SQL 使用单引号来环绕文本值(大部分数据库系统也接受双引号)。
在上个实例中 'CN' 文本字段使用了单引号。
如果是数值字段,请不要使用引号。

use runoob;

--Not:非 满足不包涵该条件的值。
select * from emp where not sal > 1500;
查询EMP表中SAL小于1500的值。

--逻辑运算的优先级:() not and or

--ORDER BY column_name,column_name ASC|DESC;(升序|降序)默认为升序

--INSERT INTO table_name (column1,column2,column3,...)
VALUES (value1,value2,value3,...);

--UPDATE table_name
SET column1=value1,column2=value2,...
WHERE some_column=some_value;

--DELETE FROM table_name
WHERE some_column=some_value;

--下面的 SQL 语句从 "Websites" 表中选取头两条记录:
SELECT * FROM Websites LIMIT 2;

--SQL LEFT JOIN 语法--SQL RIGHT JOIN 语法
SELECT column_name(s)
FROM table1
LEFT(RIGHT) JOIN table2
ON table1.column_name=table2.column_name;
注释:LEFT JOIN 关键字从左表(Websites)返回所有的行,即使右表(access_log)中没有匹配。

--SQL FULL OUTER JOIN 语法
SELECT column_name(s)
FROM table1
FULL OUTER JOIN table2
ON table1.column_name=table2.column_name;
注释:MySQL中不支持 FULL OUTER JOIN,可以在SQL Server使用。
FULL OUTER JOIN 关键字结合了 LEFT JOIN 和 RIGHT JOIN 的结果。
FULL OUTER JOIN 关键字返回左表(Websites)和右表(access_log)中所有的行。如果 "Websites" 表中的行在 "access_log" 中没有匹配或者 "access_log" 表中的行在 "Websites" 表中没有匹配,也会列出这些行。

--SQL UNION 操作符
UNION 操作符用于合并两个或多个 SELECT 语句的结果集。
请注意,UNION 内部的每个 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每个 SELECT 语句中的列的顺序必须相同。
SQL UNION 语法
SELECT column_name(s) FROM table1
UNION
SELECT column_name(s) FROM table2;

--SQL INSERT INTO SELECT 语法
我们可以从一个表中复制所有的列插入到另一个已存在的表中:
INSERT INTO table2(插入到table2表)
SELECT * FROM table1;(选择表table1表)
或者我们可以只复制希望的列插入到另一个已存在的表中:
INSERT INTO table2
(column_name(s))
SELECT column_name(s)
FROM table1;

--在 SQL 中,我们有如下约束:
NOT NULL - 指示某列不能存储 NULL 值。
UNIQUE - 保证某列的每行必须有唯一的值。
PRIMARY KEY - NOT NULL 和 UNIQUE 的结合。确保某列(或两个列多个列的结合)有唯一标识,有助于更容易更快速地找到表中的一个特定的记录。
FOREIGN KEY - 保证一个表中的数据匹配另一个表中的值的参照完整性。
CHECK - 保证列中的值符合指定的条件。
DEFAULT - 规定没有给列赋值时的默认值。

--SQL UNIQUE 约束
当表已被创建时,创建 UNIQUE 约束
ALTER TABLE table
ADD UNIQUE column_name(s)

撤销 UNIQUE 约束
ALTER TABLE Persons
DROP INDEX uc_PersonID

--ALTER TABLE 时的 SQL DEFAULT 约束

当表已被创建时,如需在 "City" 列创建 DEFAULT 约束,请使用下面的 SQL:
ALTER TABLE Persons
ALTER City SET DEFAULT 'SANDNES'

撤销 DEFAULT 约束
如需撤销 DEFAULT 约束,请使用下面的 SQL:
ALTER TABLE Persons
ALTER City DROP DEFAULT

--SQL CREATE INDEX 语法
在表上创建一个简单的索引。允许使用重复的值:
CREATE INDEX index_name
ON table_name (column_name)

上一篇下一篇

猜你喜欢

热点阅读