花了一段时间把SQL基础教程(第2版)看完,并把笔记整理好。
数据定义语言(Data Define Language)
数据操作语言(Data Manipulation Language)
数据控制语言(Data Control Language)
表的创建
CREATE TABLE 表名
(列名 数据类型 完整性约束);
表的删除与更新
DROP TABLE 表名; -- 删除表
ALTER TABLE 表名 ADD 列名 数据类型; -- 增加列名
ALTER TABLE 表名 DROP列名; -- 删除列名
ALTER TABLE 表名 MODIFY 旧列名 数据类型; -- 修改列名
ALTER TABLE 表名 CHANGE 新列名 数据类型; -- 修改列名
ALTER TABLE 表名 ALTER 列名 DROP DEFAULT; -- 删除默认
ALTER TABLE 表名 RENAME TO 新表名; -- 修改表名
ALTER TABLE 表名 MODIFY 列名 数据类型 COMMENT ''; --添加备注
ALTER TABLE tbl_name ADD PRIMARY KEY (column_list): 该语句添加一个主键,这意味着索引值必须是唯一的,且不能为NULL。
ALTER TABLE tbl_name ADD UNIQUE index_name (column_list): 这条语句创建索引的值必须是唯一的(除了NULL外,NULL可能会出现多次)。
ALTER TABLE tbl_name ADD INDEX index_name (column_list): 添加普通索引,索引值可出现多次。
ALTER TABLE tbl_name ADD FULLTEXT index_name (column_list):该语句指定了索引为 FULLTEXT ,用于全文索引。
数据的插入
INSERT语句
INSERT INTO <表名> ( 列1 ,列2 , 列3 , …… ) VALUES ( 值1 , 值2 , 值3 , …… );
数据的删除
保留数据表,仅删除全部数据行的 DELETE 语句
DELETE FROM < 表名 >;
TRUNCATE < 表名 >;
删除部分数据行的搜索型 DELETE
DELETE FROM < 表名 > WHERE < 条件 >;
数据的更新
改变表中数据的 UPDATE 语句
UPDATE < 表名 > SET < 列名 > = < 表达式 > WHERE < 条件 >;
数据的查询
查询标准语句格式:
SELECT <列名> FROM <表名>;
查询所有列:* 代表 所有
SELECT * FROM <表名>;
为列设定别名:AS(设定汉语别名时需要必须用双引号(")括起来)
SELECT product_id AS id, product_name AS name FROM product;
从结果中去掉重复行:DISTINCT (关键字只能用在第一个列名之前)
SELECT DISTINCT product_type AS p_type, product_name FROM product;
聚合函数中使用DISTINCT
SELECT COUNT(DISTINCT product_type) FROM Product;
常数 的查询:( NULL 也被视为一类数据)
表达式:SELECT <常数值> AS <显示字段名> FROM product;
SELECT ' 商品 ' AS string, 38 AS number, '2009-02-24' AS date,
product_id, product_name
FROM product;
根据 WHERE 语句来选择记录:
SELECT <列名> FROM <表名> WHERE <条件>
注释 的书写方法:
1行注释
书写在“--”之后,只能写在同一行。
多行注释
书写在“/*”和“*/”之间&