数据库常用的sql语句汇总

1. SELECT语句

1.1 基本语法

SELECT语句是SQL中最基本也是最常用的语句,它用于从数据库中查询数据。其基本语法如下:

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

SELECT指定需要查询的列名;FROM指定需要查询的表名;WHERE指定筛选条件。

1.2 使用通配符查询

在SELECT语句中可以使用通配符*来代替所有列名:

SELECT * FROM table_name;

该语句将查询表中所有列的数据。

1.3 使用函数查询

在SELECT语句中可以使用函数来对查询结果进行处理,如求和、计数、平均数等。

SELECT COUNT(column_name) FROM table_name;

以上示例查询table_name表中column_name列的数据数量。

2. INSERT语句

2.1 基本语法

INSERT语句用于向表中插入数据,其基本语法如下:

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

INSERT INTO指定需要插入数据的表名;column1, column2, ...指定需要插入的列名;VALUES指定需要插入的数据值。

2.2 插入多行数据

可以在一条INSERT语句中插入多条数据:

INSERT INTO table_name (column1, column2, ...)

VALUES (value1, value2, ...),

(value1, value2, ...),

(value1, value2, ...);

2.3 插入查询结果

可以使用SELECT语句来查询数据并将其插入到另一个表中:

INSERT INTO table1 (column1, column2, ...)

SELECT column1, column2, ...

FROM table2

WHERE condition;

以上示例查询table2表中符合条件的列数据,并插入到table1表中。

3. UPDATE语句

3.1 基本语法

UPDATE语句用于修改表中已有的数据,其基本语法如下:

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

UPDATE指定需要修改的表名;SET指定需要修改的列名和对应的值;WHERE指定需要修改的数据行。

3.2 修改多行数据

可以在一条UPDATE语句中修改多条数据:

UPDATE table_name SET column1 = value1, column2 = value2, ...

WHERE column_name IN (value1, value2, ...);

以上示例将table_name表中column_name列的值为value1、value2、...的行的column1和column2列分别修改为value1和value2。

3.3 使用子查询修改数据

可以使用子查询来查询需要修改的数据并修改:

UPDATE table_name SET column1 = (SELECT expression FROM table2 WHERE condition)

WHERE condition;

以上示例查询table2表中符合条件的expression值,并将其修改为table_name表中满足condition的column1列的值。

4. DELETE语句

4.1 基本语法

DELETE语句用于删除表中的数据,其基本语法如下:

DELETE FROM table_name WHERE condition;

DELETE FROM指定需要删除数据的表名;WHERE指定需要删除的数据行。

4.2 删除所有数据

如果不指定WHERE条件,则会删除表中所有的数据:

DELETE FROM table_name;

4.3 使用子查询删除数据

可以使用子查询来查询需要删除的数据并删除:

DELETE FROM table_name WHERE column_name IN (SELECT column_name FROM table2 WHERE condition);

以上示例查询table2表中符合条件的column_name值,并将其在table_name表中删除。

5. JOIN语句

5.1 基本语法

JOIN语句用于将多个表中的数据连接起来,其基本语法如下:

SELECT * FROM table1 JOIN table2 ON condition;

JOIN指定需要连接的表名;ON指定连接条件。

5.2 INNER JOIN

INNER JOIN表示内连接,它将两个表中相同的行连接在一起:

SELECT column_name(s) FROM table1 INNER JOIN table2 ON condition;

5.3 LEFT JOIN

LEFT JOIN表示左连接,它将左表中所有的行与右表中的匹配行连接在一起:

SELECT column_name(s) FROM table1 LEFT JOIN table2 ON condition;

5.4 RIGHT JOIN

RIGHT JOIN表示右连接,它将右表中所有的行与左表中的匹配行连接在一起:

SELECT column_name(s) FROM table1 RIGHT JOIN table2 ON condition;

5.5 FULL JOIN

FULL JOIN表示全外连接,它将两个表中所有的行连接在一起,不匹配的行将填充NULL值:

SELECT column_name(s) FROM table1 FULL JOIN table2 ON condition;

6. UNION语句

6.1 基本语法

UNION语句用于合并两个或多个SELECT语句的结果集,其基本语法如下:

SELECT column_name(s) FROM table1 WHERE condition

UNION

SELECT column_name(s) FROM table2 WHERE condition;

以上示例将table1和table2表中满足条件的列合并在一起。

6.2 UNION ALL

UNION ALL与UNION作用相同,不同之处在于它不会剔除重复的行:

SELECT column_name(s) FROM table1 WHERE condition

UNION ALL

SELECT column_name(s) FROM table2 WHERE condition;

数据库标签