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 运算符的存在,即使满足任何条件,该特定记录也会被删除。
热门文章
优秀文章