一些最重要的SQL命令
- SELECT:从数据库中提取数据
- UPDATE:更新数据库中的数据
- DELETE:从数据库中删除数据
- INSERT INTO:向数据库中插入新数据
- CREATE DATABASE:创建新数据库
- ALTER DATABASE:修改数据库
- CREATE TABLE:创建新表
- ALTER TABLE:变更(改变)数据库表
- DROP TABLE:删除表
- CREATE INDEX:创建索引(搜索键)
- DROP INDEX:删除索引
SQL SELECT 语句
SELECT column_name,column_name
FROM table_name;
SELECT DISTINCT column_name,column_name
FROM table_name;
SQL WHERE 子句
- 用于过滤记录
SELECT column_name,column_name
FROM table_name
WHERE column_name operator value;
- value 可能是文本字段或者数值字段,文本字段注意用单引号
- WHERE子句中的运算符
- =:等于
- <>:不等于
- ‘>’:大于
- <:小于
- ‘>=’:大于等于
- <=:小于等于
- BETWEEN:在某个范围内
- LIKE:搜索某种模式
- IN:指定针对某个列的多个可能值
SQL ORDER BY 关键字
- 对结果集按照一个列或者多个列进行排序
- 默认按照升序排序
SELECT column_name,column_name
FROM table_name
ORDER BY column_name,column_name ASC|DESC;
- ORDER BY多列的时候,先按照第一个column_name排序,再依次根据后面的排序
- DESC/ASC只对紧跟着它的第一个列名有效,其他不受影响,仍然是默认的升序
SQL INSERT INTO 语句
INSERT INTO table_name
VALUES (value1, value2,value3,…);
INSERT INTO table_name(column1, column2, column3,…)
VALUES (value1, value2,value3,…);
SQL UPDATE 语句
UPDATE table_name
SET column1=value1, column2=value2,…
WHERE some_column = some_value;
SQL DELETE语句
DELETE FROM table_name
WHERE some_column = some_value;
- 删除所有数据
DELETE FROM table_name;
DELETE * FROM table_name;
LIKE操作符
SELECT column_name(s)
FROM table_name
WHERE column_name LIKE pattern;
SQL通配符
通配符 | 描述 |
---|---|
% | 替代0个或多个字符 |
- | 替代一个字符 |
[charlist] | 字符列中的任何单一字符 |
[^charlist] [!charlist] | 不在字符列中的任何单一字符 |
SQL 连接(JOIN)
- INNER JOIN(JOIN):如果表中有至少一个匹配,则返回行
- LEFT JOIN:即使右表中没有匹配,也从左表返回所有的行
- RIGHT JOIN:即使左表中没有匹配,也从右表返回所有的行
- FULL JOIN:只要其中一个表中存在匹配,则返回行
SQL UNION 操作符
SELECT column_name(s) FROM table1
UNION
SELECT colun_name(s) FROM table2;
- 默认地,UNION操作符选取不同的值。如果允许重复的值,请使用UNION ALL
SQL约束
- NOT NULL:指示某列不能存储NULL值
- UNIQUE:某列的每行必须有唯一的值
- PRIMARY KEY:确保某列有唯一标识
- FOREIGN KEY:保证一个表中的数据匹配另一个表中的值的参照完整性
- CHECK:保证列中的值符合指定的条件
- DEFAULT:规定没有给列赋值时的默认值