CREATE 创建
在创建新的数据库时 使用 CREATE DATEBASE 库名
在创建新的 数据表时 使用 CREATE TABLE[IF NOT EXISTS“如果不为空”] 表名 ('列名' 类型 ( 大小) 约束,'列名' 类型 大小 约束); 约束有 NOT NULL DEFAULTS
DORP 删除
删除数据库 DORP DATEBASE 库名
删除 数据表 DORP TABLE 表名 (只删除 表内数据 truncate table 表名;)
DELETE 删除
DELETE FROM table WHERE 条件;
INSERT 插入数据
INSERT INTO 表名(columns1,columns2,...)VALUES (value1,value2,...) columns必须和value一一对应
UPDATE 更新数据
UPDATE table1 SET field1=value1,field2=value2 WHERE 条件;
SELECT 查询数据
SELECT * FROM table1 WHERE 条件 LIMIT OFFSET ,ROWS (offset 偏移量 rows 返回数目 即 查询 从0到offset 然后返回第offset+1 至 offset+rows的数据 )
WHERE 相关比较符号
进行字符串比较时 where 默认不区分大小写 可以在WHERE 后 追加 BINART
[SELECT | DELETE | UPDATE ] ... WHERE BINARY 条件1 [AND | OR] 条件2
LINK 约等于
常用于 WHERE 后 用 %表示 未知的字符 例如 以 ".com" 结尾的 “%.com” 包含 “hotmail”在中间的“%hotmail%”
UNION 链接多个SELECT 的关键字
蓝色 为默认 返回最终结果不包含重复结果 ALL 可选 包含重复结果
ORDER BY 排序
SELECT * FROM table WHERE ORDER BY field1,field2 [ASC|DESC](默认ASC升序 DESC降序)
GROUP BY 分组
SELECT field1,[COUNT(*)计数|SUM(*)总和 |AVG(*)平均值 ] FROM table1 GROUP BY field1
WITH ROLLUP 在分组的基础在统计
SELECT field1 ,SUM(需要统计的字段名 )as新表字段名 FROM 表名 GROUP BY field1(需要归类的字段) WITH ROLLUP;
coalesce
coalesce(a,b,c)a!=null 返回a 否则 下选b ,b!=null 返回b 否则下选c
SELECT coalesce(f1,column),SUM(f2)asnewF2 FROM tbl GROUP BY f1 WITH ROLLUP 统计在tb1中f1的出现次数 并分组 f1为null则记录为f3 然后以column命名
统计f2的值 并重新命名Column为newF2INNER JOIN(内连接,或等值连接):获取两个表中字段匹配关系的记录。两个表 共享的部分 举例:SELECT a.f1,b.f2 FROM t1 a(别名) INNER JOIN t2 b(别名) ON a.f1=b.f2;
LEFT JOIN(左连接):获取左表所有记录,即使右表没有对应匹配的记录。两个表 共享的部分 举例:SELECT a.f1,b.f2 FROM t1 a(别名) LEFT JOIN t2 b(别名) ON a.f1=b.f2
RIGHT JOIN(右连接): 与 LEFT JOIN 相反。 两个表 共享的部分 举例:SELECT a.f1,b.f2 FROM t1 a(别名) RIGHT JOIN t2 b(别名) ON a.f1=b.f2
IS 【NOT】 NULL判断是否为空的 WHERE 的条件
REGEXP
实例
ALTER 修改
ALTER TABLE tb1 【DORP删除 field | ADD增加 field 类型(大小)| MODIFY 修改field 类型(大小)| CHANGE修改 field newField 类型】 MODIFY 默认 NULL 否则 NOT NULL DEFAULT value;
ALTER TABLE tb1 ALTER field SET 【DORP】DEFAULT value 修改【删除】默认值