欢迎您 本站地址:  

SQL 语法

SQL(Structured Query Language)是一种用于管理和操作关系数据库的标准语言,包括数据查询、数据插入、数据更新、数据删除、数据库结构创建和修改等功能。。


数据库表

一个数据库通常包含一个或多个表,每个表有一个名字标识(例如:"Websites"),表包含带有数据的记录(行)。

在本教程中,我们在 MySQL 的 RUNOOB 数据库中创建了 Websites 表,用于存储网站记录。

我们可以通过以下命令查看 "Websites" 表的数据:

mysql> use RUNOOB;
Database changed

mysql> set names utf8;
Query OK, 0 rows affected (0.00 sec)

mysql> SELECT * FROM Websites;
+----+--------------+---------------------------+-------+---------+
| id | name         | url                       | alexa | country |
+----+--------------+---------------------------+-------+---------+
| 1  | Google       | https://www.google.cm/    | 1     | USA     |
| 2  | 淘宝          | https://www.taobao.com/   | 13    | CN      |
| 3  | 小库网      | http://www.www.fxku.cn/    | 4689  | CN      |
| 4  | 微博          | http://weibo.com/         | 20    | CN      |
| 5  | Facebook     | https://www.facebook.com/ | 3     | USA     |
+----+--------------+---------------------------+-------+---------+
5 rows in set (0.01 sec)

解析


SQL 语句

您需要在数据库上执行的大部分工作都由 SQL 语句完成。

下面的 SQL 语句从 "Websites" 表中选取所有记录:

实例

SELECT * FROM Websites;

在本教程中,我们将为您讲解各种不同的 SQL 语句。


请记住...


SQL 语句后面的分号?

某些数据库系统要求在每条 SQL 语句的末端使用分号。

分号是在数据库系统中分隔每条 SQL 语句的标准方法,这样就可以在对服务器的相同请求中执行一条以上的 SQL 语句。

在本教程中,我们将在每条 SQL 语句的末端使用分号。


一些最重要的 SQL 命令

以下是一些常用的 SQL 语句和语法:

SELECT:用于从数据库中查询数据。

SELECT column_name(s)
FROM table_name
WHERE condition
ORDER BY column_name [ASC|DESC]

INSERT INTO:用于向数据库表中插入新数据。

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

UPDATE:用于更新数据库表中的现有数据。

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

DELETE:用于从数据库表中删除数据。

DELETE FROM table_name
WHERE condition

CREATE TABLE:用于创建新的数据库表。

CREATE TABLE table_name (
    column1 data_type constraint,
    column2 data_type constraint,
    ...
)

ALTER TABLE:用于修改现有数据库表的结构。

ALTER TABLE table_name
ADD column_name data_type

或:

ALTER TABLE table_name
DROP COLUMN column_name

DROP TABLE:用于删除数据库表。

DROP TABLE table_name

CREATE INDEX:用于创建索引,以加快查询速度。

CREATE INDEX index_name
ON table_name (column_name)

DROP INDEX:用于删除索引。

DROP INDEX index_name
ON table_name

WHERE:用于指定筛选条件。

SELECT column_name(s)
FROM table_name
WHERE condition

ORDER BY:用于对结果集进行排序。

SELECT column_name(s)
FROM table_name
ORDER BY column_name [ASC|DESC]

GROUP BY:用于将结果集按一列或多列进行分组。

SELECT column_name(s), aggregate_function(column_name)
FROM table_name
WHERE condition
GROUP BY column_name(s)

HAVING:用于对分组后的结果集进行筛选。

SELECT column_name(s), aggregate_function(column_name)
FROM table_name
GROUP BY column_name(s)
HAVING condition

JOIN:用于将两个或多个表的记录结合起来。

SELECT column_name(s)
FROM table_name1
JOIN table_name2
ON table_name1.column_name = table_name2.column_name

DISTINCT:用于返回唯一不同的值。

SELECT DISTINCT column_name(s)
FROM table_name

小库提示

扫描下方二维码,访问手机版。