SQL Or

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

一、SQL 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”示例

编写查询以从员工的部门是 IT 或位置是Chennai的 emp 表中获取记录。

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表中,有3名员工的部门是IT。但是只有两条记录的位置在Chennai。仍然显示所有三个记录。发生这种情况是因为我们在查询中指定了 OR 运算符,根据该运算符,即使满足任何一个条件,记录也将被考虑在结果集中。 

三、带有 SQL UPDATE 的 SQL "OR" 示例

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

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

我们将使用 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 表中有两名员工的部门为“Marketing”,并且有一条姓氏为“Tarle”的记录。尽管仍然只满足一个条件,但由于 OR 运算符,该记录在表中被考虑和更新。 

四、带有 SQL DELETE 的 SQL“OR”示例

编写查询以从 emp 表中删除员工的姓氏为 Jain 或 Location 为 Bangalore 的记录。

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

我们将使用 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 运算符的存在,即使满足任何条件,该特定记录也会被删除。 

热门文章

优秀文章