SQL速查表

简介: SQL速查表

数据库操作

--创建数据库
create DATABASE MYDATABASE;
--删除数据库
drop database MYDATABASE;

创建表

CREATE TABLE tab_name (
   col1 col1_type PRIMARY KEY,
   col2 INTEGER AUTOINCREMENT,,
   col3 col3_type NOT NULL,
   .....
   colN colN_type,
);
/* 常用类型:
TEXT 字符串, CHAR(100) 固长字符串
INTEGER 整型, BIGINT 长整型, REAL 实数, 
BOOL 布尔值
BLOB 二进制
DATETIME 时间 
*/
PRIMARY KEY 标记主键,NOT NULL标记非空。AUTOINCREMENT 自增,只能用于整型。

删除/更新表

-- 删除表
DROP TABLE tab_name;
-- 新增列
ALTER TABLE ADD COLUMNS col_name col_type;
-- 重命名表
ALTER TABLE old_tab RENAME TO new_tab
-- 重命名列名(3.25.0+)
ALTER TABLE tab_name RENAME COLUMN old_col TO new_col

新增记录

-- 单条
INSERT INTO tab_name VALUES (xx, xx)
-- 指定列名
INSERT INTO tab_name (col1, col3) VALUES (xx, xx)
-- 多条
INSERT INTO tab_name (col1, col2, col3) VALUES
    (xx, xx, xx),
    ...
    (xx, xx, xx);

查询记录

-- 所有列
SELECT * FROM tab_name;
-- 去除重复
SELECT DISTINCT col1 FROM tab_name;
-- 统计个数
SELECT COUNT(*) FROM tab_name
-- 指定列
SELECT col1, col2 FROM table_name;
-- 带查询条件 >、<、=、LIKE、NOT、AND、OR 等
SELECT * FROM table_name WHERE col2 >= 18;
SELECT * FROM table_name
    WHERE col2 >= 18 AND col1 LIKE %stu%;
-- 限制数量
SELECT * FROM table_name LIMIT 1;
-- GROUP BY
SELECT col1, count(*) FROM tab_name
    WHERE [ conditions ]
    GROUP BY col1
-- Having
SELECT col1, count(*) FROM tab_name
    WHERE [ conditions ]
    GROUP BY col1
    HAVING [ conditions ]
-- 排序, DESC 降序,ASC 升序
SELECT * FROM table_name ORDER BY col2 DESC;

删除/更新记录

-- 删除满足条件的记录
DELETE FROM tab_name WHERE condition;
-- 更新记录
UPDATE tab_name SET col1=value1, col2=value2
-- 更新满足条件的记录
UPDATE tab_name
    SET col1=value1, col2=value2
    WHERE [ conditions ]

事务(Transaction)

-- 提交
BEGIN;
INSERT INTO ...
...
COMMIT; 
-- 回滚
BEGIN;
...
ROLLBACK;
事务具有原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)四个标准属性,缩写为 ACID。
相关文章
|
3月前
|
SQL 关系型数据库 MySQL
《SQL必知必会》个人笔记(一)
《SQL必知必会》个人笔记(一)
44 0
|
17天前
|
SQL 存储 Oracle
《SQL必知必会》个人笔记
《SQL必知必会》个人笔记
16 1
|
3月前
|
SQL 存储 安全
《SQL必知必会》个人笔记(四)
《SQL必知必会》个人笔记(四)
32 0
|
3月前
|
SQL 关系型数据库 数据库
《SQL必知必会》个人笔记(三)
《SQL必知必会》个人笔记(三)
31 0
|
3月前
|
SQL 存储 Oracle
《SQL必知必会》个人笔记(二)
《SQL必知必会》个人笔记(二)
31 0
|
SQL 关系型数据库 MySQL
SQL教程学习总结
SQL关键字总是大写,以示突出,表名和列名均使用小写。
86 0
|
SQL 存储 Oracle
SQL 简易教程 中
SELECT TOP 子句 用于规定要返回的记录的数目。 在 MySQL 中使用 LIMIT 关键字。这里查询排名前 3 的网站 SELECT * FROM Websites ORDER BY alexa LIMIT 3; SQL LIKE 操作符 LIKE 操作符用于在 WHERE 子句中搜索列中的指定模式。其中 % 替代 0 个或多个字符。_替代一个字符。 通配符 描述 % 替代 0 个或多个字符 _ 替代一个字符 SELECT * FROM Websites WHERE name LIKE 'G%'; 举例: '%a' //以a结尾的数据 'a%' //以a开头的
92 0
|
SQL 存储 Oracle
SQL 简易教程 上
本节包含SQL 介绍,增删查改语句知识。 什么是数据库 数据库(database)保存有组织的数据的容器(通常是一个文件或一组文件)。 表(table)某种特定类型数据的结构化清单。 SQL 是什么 SQL(发音为字母S-Q-L或sequel)是 Structured Query Language(结构化查询语言)的缩写。SQL 是一种专门用来与数据库沟通的语言。 SQL 的扩展 许多 DBMS 厂商通过增加语句或指令,对 SQL 进行了扩展。这种扩展的目的是提供执行特定操作的额外功能或简化方法。虽然这种扩展很有用,但一般都是针对个别 DBMS 的,很少有两个厂商同时支持这种扩展。标准
116 0
SQL 简易教程 上
|
SQL 存储 Oracle
SQL 简易教程 下
包含视图、函数知识、防止 SQL 注入攻击等内容。 SQL 函数 简介 大多数 SQL 实现支持以下类型的函数。 ❑ 用于处理文本字符串(如删除或填充值,转换值为大写或小写)的文本函数。❑ 用于在数值数据上进行算术操作(如返回绝对值,进行代数运算)的数值函数。 ❑ 用于处理日期和时间值并从这些值中提取特定成分(如返回两个日期之差,检查日期有效性)的日期和时间函数。 ❑ 用于生成美观好懂的输出内容的格式化函数(如用语言形式表达出日期,用货币符号和千分位表示金额)。 ❑ 返回 DBMS 正使用的特殊信息(如返回用户登录信息)的系统函数 SQL 函数不区分大小写。随你的喜好,不过注意保持风格一致
136 0
|
SQL 存储 关系型数据库
《SQL必知必会》读书笔记,30分钟入门SQL!(四)
本篇文章是 《SQL 必知必会》 的读书笔记,SQL必知必会的英文名叫做 Sams Teach Yourself in 10 Minutes。但是,我肯定是不能够在10分钟就能学会本书所有涉及到的sql,所以就起个名字叫30分钟学会SQL语句。 目前手边的数据库是 mysql,所以以下示例均是由 mysql 演示。由于现在大部分工具都支持语法高亮,所以以下关键字都使用小写。
《SQL必知必会》读书笔记,30分钟入门SQL!(四)