SQL(1)

列,字段,垂直实体
行,记录,横向实体
SQL在文本值周围使用单引号(大多数数据库系统也接受双引号)。如果是数值字段,则不要使用引号。
• 数据操作语言 (DML Data Manipulation Language)

  1. SELECT - 从数据库表中获取数据
  2. UPDATE - 更新数据库表中的数据
  3. DELETE - 从数据库表中删除数据
  4. INSERT INTO - 向数据库表中插入数据

• 数据定义语言 (DDL Data Definition Language)

  1. CREATE DATABASE - 创建新数据库
  2. ALTER DATABASE - 修改数据库
  3. CREATE TABLE - 创建新表
  4. ALTER TABLE - 变更(改变)数据库表
  5. DROP TABLE - 删除表

SELECT

从表中选取指定字段:

SELECT column1, column2, ...  
FROM table_name;FROM table_name;

选取所有:

SELECT * FROM table_name;

仅返回不同的值:

SELECT DISTINCT column1, column2, ...
FROM table_name;

WHERE子句用于提取满足指定标准的记录,也可用于UPDATE,DELETE等语句

SELECT column1, column2, ...
FROM table_name
WHERE condition;

WHERE子句可以与AND,OR和NOT运算符结合使用,三种运算符通过括号可以结合使用
AND:如果由AND分隔的所有条件为TRUE,则AND运算符显示记录

SELECT column1, column2, ...
FROM table_name
WHERE condition1 AND condition2 AND condition3 ...;

OR:如果由OR分隔的任何条件为真,则OR运算符显示记录

SELECT column1, column2, ...
FROM table_name
WHERE condition1 OR condition2 OR condition3 ...;

NOT:如果条件不为真,则NOT运算符显示记录

SELECT column1, column2, ...
FROM table_name
WHERE NOT condition;

ORDER BY 关键字用于按升序或降序对结果集进行排序,默认情况下按升序排序记录。如果需要按降序对记录进行排序,可以使用DESC关键字。空值在升序中最后显示。

SELECT column1, column2, ...
FROM table_name
ORDER BY column1, column2, ... ASC|DESC;
//分别规定升序降序
SELECT * FROM Customers
ORDER BY Country ASC, CustomerName DESC;

总结:

SELECT [ALL|DISTINCT] <目标列表达式> [,<目标列表达式>] …
FROM <表名或视图名>[, <表名或视图名> ] …
[ WHERE <条件表达式> ]
[ GROUP BY <列名1> [ HAVING <条件表达式> ] ]
[ ORDER BY <列名2> [ ASC|DESC ] ]; 

其中:SELECT子句指定要显示的属性列;FROM子句指定查询对象(基本表或视图);WHERE子句指定查询条件;GROUP BY子句对查询结果按指定列的值分组,该属性列值相等的元组为一个组,通常会在每组中作用集函数;HAVING短语筛选出只有满足指定条件的组;ORDER BY子句对查询结果表按指定列值的升序或降序排序。

INSERT INTO

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

为表中的所有列添加值,不需要在SQL查询中指定列名称,确保值的顺序与表中的列顺序相同

INSERT INTO table_name
VALUES (value1, value2, value3, ...);

值为 NULL 的字段没有值。NULL 值与 0 或者包含空白(spaces)的字段是不同的。具有NULL值的字段是在记录创建期间留空的字段。
不能使用比较运算符来测试null值,使用IS NULL和IS NOT NULL运算符

SELECT column_names
FROM table_name
WHERE column_name IS NULL;

SELECT column_names
FROM table_name
WHERE column_name IS NOT NULL;

UPADATE

UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;

没有WHERE,全部更新(凉凉)

DELETE

DELETE FROM table_name
WHERE condition;

和UPDATE一样,没有WHERE凉凉 ,故意删除那当我没说

DELETE FROM table_name;
//或者
DELETE * FROM table_name;

猜你喜欢

转载自blog.csdn.net/irontonystark/article/details/84255240