sql中on和where的区别-SQL

admin2年前 (2024-06-05)基础运维知识402
点击下载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%'
登录后复制

相关文章

mysql怎么更改安装路径-mysql教程

如何更改 MySQL 安装路径 问题:如何在不重新安装 MySQL 的情况下更改 MySQL 的安装路径? 回答: 步骤: 关闭所有 MySQL 服务:停止 MySQL 数据库服务和其他相关服务...

sql多条件查询怎么写-SQL

SQL 多条件查询 多条件查询是指在一个 SQL 语句中使用多个条件来筛选数据。 语法: SELECT column1, column2, ... FROM table_name WHERE con...

sql完整性约束怎么设置-SQL

SQL 完整性约束 什么是 SQL 完整性约束? SQL 完整性约束是一组规则,用于确保数据库中的数据准确性和一致性。它有助于防止不一致和无效的数据进入数据库。 如何设置 SQL 完整性约束? 在...

mysql怎么加外键约束-mysql教程

如何使用 MySQL 添加外键约束 添加外键约束的步骤: 确定主外键字段:确定需要建立关系的两个表的主键和外键字段。 在子表中定义外键约束:在包含外键字段的子表中添加 FOREIGN KEY...

sql表怎么映射-SQL

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

oracle解释计划怎么看-Oracle

如何解读 Oracle 解释计划 Oracle 解释计划是数据库提供的关于 SQL 语句执行计划的信息。它提供了对语句如何执行以及为什么以这种方式执行的深入见解。了解如何解读解释计划对于优化查询性能...

发表评论

访客

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