SQL OR

SQL OR

SQL的 OR 条件用于在SQL查询中创建一个SQL语句,当符合任何一个条件时返回记录。它可以用在 SELECT 语句、 INSERT 语句、 UPDATE 语句或 DELETE 语句中。

我们来看一下OR条件的语法:

SELECT columns FROM tables WHERE condition 1 OR condition 2;  
ID First_Name Last_Name Department Location
1 Harshad Kuwar Marketing Pune
2 Anurag Rajput IT Mumbai
3 Chaitali Tarle IT Chennai
4 Pranjal Patil IT Chennai
5 Suraj Tripathi Marketing Pune
6 Roshni Jadhav Finance Bangalore
7 Sandhya Jain Finance Bangalore
  • SQL SELECT语句中使用SQL “OR”条件的示例

这是SQL “OR”条件在SQL SELECT语句中的使用方法。

示例1:

编写一个查询,获取emp表中部门为IT或位置为Chennai的员工记录。

查询:

mysql> SELECT *FROM emp WHERE Department = "IT" OR Location = "Chennai";
ID First_Name Last_Name Department Location
2 Anurag Rajput IT Mumbai
3 Chaitali Tarle IT Chennai
4 Pranjal Patil IT Chennai

在emp表中,有三个部门为IT的员工。但是只有两条记录的位置是Chennai。尽管如此,所有三条记录都会被显示出来。这是因为我们在查询中指定了OR运算符,根据该运算符,只要满足任一条件,记录就会被视为结果集的一部分。

示例2:

编写一个查询,以获取emp表中部门为Marketing或位置为Noida的记录。

查询:

mysql> SELECT *FROM emp WHERE Department = "Marketing" OR Location = "Noida";
ID First_Name Last_Name Department Location
1 Harshad Kuwar Marketing Pune
5 Suraj Tripathi Marketing Pune
7 Sandhya Jain Finance Bangalore

在emp表中,有两个部门是Marketing的员工,但仍然显示了三条记录。这是由于查询中使用了OR算子导致的。在上面显示的三条记录中,前两条记录满足条件1;第二条记录同时满足两个条件,而第三条记录仅满足条件1。由于OR算子的存在,即使满足任何一个条件,该记录也会被包含在结果集中。

  • 使用SQL UPDATE语句的SQL “OR”示例

这是如何在SQL UPDATE语句中使用”OR”条件的。

示例1:

编写一个查询,更新emp表中部门为Marketing的员工的记录,或者姓氏为Tarle的记录。对于这些特定的员工,将位置的更新值设为Delhi。

查询:

mysql> UPDATE emp SET Location = "Delhi" WHERE Department = "Marketing" OR Last_Name = "Tarle";

SQL OR

我们将使用SELECT查询来验证更新后的记录。

mysql> SELECT *FROM emp;
ID First_Name Last_Name Department Location
1 Harshad Kuwar Marketing Pune
2 Anurag Rajput IT Mumbai
3 Chaitali Tarle IT Chennai
4 Pranjal Patil IT Chennai
5 Suraj Tripathi Marketing Pune
6 Roshni Jadhav Finance Bangalore
7 Sandhya Jain Finance Bangalore

查询在emp表中的记录,其中员工所在部门是’市场营销’的有两个员工,而姓氏是’Tarle’的记录有一个。虽然仅有一个条件仍能满足,但由于OR操作符,该记录仍会被视为并更新到表中。

例2:

编写一个查询来更新emp表中的记录,其中员工的部门是财务部,或者名字是Sandhya。对于那个特定的员工,将部门的更新值设置为人力资源部。

查询:

mysql> UPDATE emp SET Department = "HR" WHERE Department = "Finance" OR First_Name = "Sandhya";

SQL OR

我们将使用SELECT查询来验证更新的记录。

mysql> SELECT *FROM emp;

ID | First_Name | Last_Name | Department | Location
—|—|—|—|—
1 | Harshad | Kuwar | Marketing | Delhi
2
安拉格 | 拉吉普特 | IT | 孟买 | 3 | 查伊塔利 | 塔尔勒 | IT | 德里
4 | 普兰杰尔 | 帕蒂尔 | IT | 温得哈尔
5 | 苏拉杰 | 特里帕蒂 | 市场营销 | 德里
6 | 罗什尼 | 贾达夫 | 人力资源 | 班加罗尔
7 | 桑迪娅 | 贾因 | 人力资源 | 诺伊达

部门为“金融”的员工有两个,在这两个记录中,有一个记录满足emp表中的两个条件。然而,由于OR运算符,这两条记录都被考虑并更新到表中。

  • SQL“OR”删除示例

这是如何在SQL删除语句中使用SQL“OR”条件的示例。

示例1:

编写一个查询,从emp表中删除姓氏为Jain或位置为班加罗尔的记录。

查询:

mysql> DELETE FROM emp WHERE Last_Name = 'Jain' OR Location = 'Bangalore';

SQL OR

我们将使用SELECT查询来验证已删除的记录。

mysql> SELECT *FROM emp;
ID First_Name Last_Name Department Location
1 Harshad Kuwar Marketing Pune
2 Anurag Rajput IT Mumbai
3 Chaitali Tarle IT Chennai
4 Pranjal Patil IT Chennai
5 Suraj Tripathi Marketing Pune

emp表中只有一条记录的姓氏为Jain,还有一条记录的地点是Bangalore。但是,由于存在OR运算符,即使任何条件满足,该特定记录也会被删除。

示例2:

编写一个查询,从emp表中删除员工部门为市场营销部,并且地点为Delhi的记录。

查询:

mysql> DELETE FROM emp WHERE Department = 'Marketing' OR Location = 'Delhi';

SQL OR

我们将使用SELECT查询来验证删除的记录。

mysql> SELECT *FROM emp;
ID First_Name Last_Name Department Location
2 Anurag Rajput IT Mumbai
4 Pranjal Patil IT Chennai

在emp表中只有一条记录的部门是市场营销,一条记录的地点是德里。但是,由于存在”OR”运算符,即使满足任何一个条件,那条记录也会被删除。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程