sql中on和where的区别-SQL

admin2年前 (2024-06-05)基础运维知识315
点击下载TXT

SQL 中 ON 和 WHERE 的区别

在 SQL 查询中,ON 和 WHERE 是两个常用的子句,在连接表和过滤数据时发挥着不同的作用。

ON 子句

ON 子句用于连接两个或多个表,基于它们之间的特定列值匹配。其语法如下:

SELECT ...
FROM table1
JOIN table2 ON table1.column = table2.column
登录后复制

ON 子句中的条件将过滤掉不满足匹配条件的行,从而仅返回满足条件的行的联合。

WHERE 子句

WHERE 子句用于过滤数据。它允许我们使用条件来指定我们想要从表中检索哪些行。其语法如下:

SELECT ...
FROM table
WHERE condition
登录后复制

WHERE 子句中的条件可以基于列值、函数或其他表达式。它将过滤掉不满足条件的行,仅返回满足条件的行。

总结

  • ON 子句用于连接表,基于条件过滤行的联合。
  • WHERE 子句用于过滤单个表中的行,基于条件过滤行本身。

示例

假设我们有两个表:

  • Customers(包含客户信息)
  • Orders(包含客户订单信息)

以下查询使用 ON 子句连接 Customers 和 Orders 表,并仅返回购买了价值超过 100 美元的订单:

SELECT *
FROM Customers
JOIN Orders ON Customers.customer_id = Orders.customer_id
WHERE Orders.order_total > 100
登录后复制

以下查询使用 WHERE 子句过滤 Customers 表,并仅返回名称以 "J" 开头的客户:

SELECT *
FROM Customers
WHERE name LIKE 'J%'
登录后复制

相关文章

sql表怎么映射-SQL

SQL 表映射 映射 SQL 表将表中的数据结构转换为可用于编程语言的对象或实体。它使开发人员能够轻松操作数据库数据,而无需直接处理 SQL 查询。 映射过程 表映射通常涉及以下步骤: 确定表结...

mongodb怎么设置用户-MongoDB

如何设置 MongoDB 用户 MongoDB 是一个 NoSQL 数据库系统,它使用基于角色的访问控制 (RBAC) 来管理对数据的访问。要设置 MongoDB 用户,请按照以下步骤操作: 1....

sql游标怎么写-SQL

SQL 游标 什么是 SQL 游标? SQL 游标是一个用于管理和遍历结果集的结构。它允许应用程序从结果集中向上、向下或随机移动并检索数据。 如何写 SQL 游标? 声明游标: DECLARE cu...

sql游标怎么排序-SQL

SQL 游标排序 SQL 游标是一种允许程序逐行访问查询结果集的机制。但是,默认情况下,游标不会对结果进行排序。 如何对 SQL 游标进行排序? 要对 SQL 游标进行排序,可以使用 ORDER B...

navicat激活失败怎么办-navicat

Navicat 激活失败的解决方法 问题:Navicat 激活失败怎么办? 解决方案: Navicat 激活失败的原因可能是多方面的,以下是常见的解决方法: 1. 检查激活码是否正确: 确保激活码...

mysql怎么导入mdf文件-mysql教程

如何将 MDF 文件导入 MySQL MySQL 无法直接导入 Microsoft SQL Server (MSSQL) 的 MDF 文件。但是,可以通过以下步骤将 MDF 文件中的数据迁移到 My...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。