📜  SQL中From和Where子句的区别(1)

📅  最后修改于: 2023-12-03 15:05:20.551000             🧑  作者: Mango

SQL中From和Where子句的区别

From子句

From子句用于指定查询的表,可以是单个表,也可以是多个表的联接。当有多个表时,需要使用JOIN操作符将其联接在一起。

以下是使用From子句从单个表中查询的示例:

SELECT *
FROM users;

以下是使用From子句从多个表中查询的示例:

SELECT *
FROM users
JOIN orders ON users.id = orders.user_id;

在这个示例中,usersorders表通过JOIN操作符联接在一起。

Where子句

Where子句用于在查询中添加条件,以过滤结果集。可以使用条件运算符(如=>``<>=<=等)和逻辑运算符(如ANDORNOT)来创建条件。

以下是使用Where子句筛选结果的示例:

SELECT *
FROM users
WHERE age > 30 AND gender = 'female';

在这个示例中,只有年龄大于30岁且性别为女性的用户才会出现在结果集中。

区别

从语义上来讲,From子句用于指定要查询的表或表的联接,而Where子句则用于添加条件以筛选查询结果。

From子句是必需的,它指定了要从哪张表中获取数据。而Where子句则不是必需的,但是如果需要筛选结果,则需要使用Where子句。

以下是一个使用FromWhere子句一起使用的示例:

SELECT *
FROM users
JOIN orders ON users.id = orders.user_id
WHERE orders.total_price > 1000;

在这个示例中,我们指定了要从usersorders表中获取数据,并且仅选择订单总价大于1000的记录。

因此,虽然From子句和Where子句都用于创建查询,但它们的目的和用途是不同的,应该根据具体的查询需要来使用它们。