SQL命令大全,每条命令均有示例,小白看了也可成神!

您所在的位置:网站首页 sql中创建表的命令有哪些 SQL命令大全,每条命令均有示例,小白看了也可成神!

SQL命令大全,每条命令均有示例,小白看了也可成神!

2024-07-09 09:40| 来源: 网络整理| 查看: 265

大家好,这里是网络技术干货圈,今天给大家带来的是SQL命令列表,每条命令都会带有示例,对于sql初学者甚至小白来说无疑是个福音!

SELECT

SELECT 可能是最常用的 SQL 语句,每次使用 SQL 查询数据时,几乎都会用到它。

例如,在下面的代码中,从customers表中查询name字段。

代码语言:txt复制SELECT name FROM customers;SELECT *

使用*代表查询表中的所有列

代码语言:txt复制SELECT * FROM customers;SELECT DISTINCT

SELECT DISTINCT 只返回不同的数据,意思就是如果有重复的记录,只会返回重复记录中的一条记录。

代码语言:txt复制SELECT DISTINCT name FROM customers;SELECT INTO

SELECT INTO 将指定的数据从一个表复制到另一个表中。

代码语言:txt复制SELECT * INTO customers FROM customers_bakcup;SELECT TOP

SELECT TOP 仅返回表中的最高x数字或百分比。

下面的代码将返回customers表中的前 50 个结果:

代码语言:txt复制SELECT TOP 50 * FROM customers;

下面的代码将返回customers表的前 50%

代码语言:txt复制SELECT TOP 50 PERCENT * FROM customers;AS

as重命名就是给相关列起个别名,例如,在下面的代码中,我们将name列重命名为first_name:

代码语言:txt复制SELECT name AS first_name FROM customers;FROM

FROM 指定查询的来源表

代码语言:txt复制SELECT name FROM customers;WHERE

过滤查询,返回匹配条件的结果,一般条件将配合=,>,=, 2;ORDER BY

ORDER BY sets the order of the returned results. The order will be ascending by default.

代码语言:txt复制SELECT name FROM customers ORDER BY age;DESC

DESC 将按降序返回结果。

代码语言:txt复制SELECT name FROM customers ORDER BY age DESC;OFFSET

OFFSET 语句与 ORDER BY 一起使用,并指定在开始从查询中返回行之前要跳过的行数。

代码语言:txt复制SELECT name FROM customers ORDER BY age OFFSET 10 ROWS;FETCH

FETCH 指定在处理完 OFFSET 子句后要返回的行数。

OFFSET 子句是强制性的,而 FETCH 子句是可选的。

代码语言:txt复制SELECT name FROM customers ORDER BY age OFFSET 10 ROWS FETCH NEXT 10 ROWS ONLY;连接 (内部、左、右、全)

JOIN 子句用于组合来自两个或多个表的行,JOIN 的四种类型是 INNER、LEFT、RIGHT 和 FULL。

INNER JOIN

INNER JOIN 选择在两个表中具有匹配值的记录。

代码语言:txt复制SELECT name FROM customers INNER JOIN orders ON customers.customer_id = orders.customer_id;LEFT JOIN

LEFT JOIN 从左表中选择与右表中的记录匹配的记录,在下面的例子中,左表是customers.

代码语言:txt复制SELECT name FROM customers LEFT JOIN orders ON customers.customer_id = orders.customer_id;RIGHT JOIN

RIGHT JOIN 从右表中选择与左表中的记录匹配的记录,在下面的例子中,右表是orders.

代码语言:txt复制SELECT name FROM customers RIGHT JOIN orders ON customers.customer_id = orders.customer_id;FULL JOIN

FULL JOIN 选择在左表或右表中匹配的记录。

与“AND”JOIN(INNER JOIN)相比,可以将其视为“OR”JOIN。

代码语言:txt复制SELECT name FROM customers FULL OUTER JOIN orders ON customers.customer_id = orders.customer_id;EXISTS

EXISTS 用于测试子查询中是否存在任何记录。

代码语言:txt复制SELECT name FROM customers WHERE EXISTS (SELECT order FROM ORDERS WHERE customer_id = 1);GRANT

GRANT 允许特定用户访问数据库对象,例如表、视图或数据库本身。

下面的示例将为名为“usr_bob”的用户赋予对customers表的 SELECT 和 UPDATE 访问权限。

代码语言:txt复制GRANT SELECT, UPDATE ON customers TO usr_bob;REVOKE

REVOKE 删除用户对特定数据库对象的权限。

代码语言:txt复制REVOKE SELECT, UPDATE ON customers FROM usr_bob;SAVEPOINT

SAVEPOINT 允许您标识事务中的一个点,可以稍后回滚到该点,类似于创建备份。

代码语言:txt复制SAVEPOINT SAVEPOINT_NAME;COMMIT

COMMIT 用于将每个事务保存到数据库中,COMMIT 语句将释放任何可能正在使用的现有保存点,并且一旦发出该语句,就无法回滚事务。

代码语言:txt复制DELETE FROM customers WHERE name = ‘Bob’; COMMIT;ROLLBACK

ROLLBACK 用于撤消未保存到数据库的事务,这只能用于撤消自上次发出 COMMIT 或 ROLLBACK 命令以来的事务,还可以回滚到之前创建的 SAVEPOINT。

代码语言:txt复制ROLLBACK TO SAVEPOINT_NAME;TRUNCATE

TRUNCATE TABLE 从数据库的表中删除所有数据条目,但保留表和结构。

代码语言:txt复制TRUNCATE TABLE customers;UNION

UNION 使用两个或多个 SELECT 语句组合多个结果集并消除重复行。

代码语言:txt复制SELECT name FROM customers UNION SELECT name FROM orders;UNION ALL

UNION ALL 使用两个或多个 SELECT 语句组合多个结果集并保留重复行。

代码语言:txt复制SELECT name FROM customers UNION ALL SELECT name FROM orders;


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3