SQL 比较运算符

SQL 比较运算符

对于数据库表中的两列进行值比较的SQL运算符被称为比较运算符。

在SQL中,比较运算符总是与SELECT、UPDATE和DELETE语句的WHERE子句一起使用。

SQL中的比较运算符分为以下六个类别:

  1. SQL等于运算符 (=)
  2. SQL不等于运算符 (!=)
  3. SQL大于等于运算符 (>=)
  4. SQL小于运算符 (<)
  5. SQL大于运算符 (>)
  6. SQL小于等于运算符 (<=)

让我们逐个详细讨论每个比较运算符及其示例。

SQL等于运算符 (=)

此类型的比较运算符仅选择与指定值匹配的表中的数据。

数据库用户在结构化查询语言中广泛使用此运算符。

如果数据库表中的列的值与查询中指定的值相同,则此运算符将返回TRUE行。

以下语法通过使用等于运算符从表中访问数据:

SELECT * FROM Table_Name WHERE Column_Name = Value;

将使用等号运算符更新表中数据的语法如下:

UPDATE Table_Name SET Column_Name = Value WHERE Column_Name = Value;

使用“等于”运算符删除表中数据的语法如下:

DELETE FROM Table_Name WHERE Field_Name = Value;

SQL等于运算符示例

以下CREATE查询创建了一个包含五个字段的Employee表:

CREATE TABLE Employee
(
Employee_ID INT,
Emp_Name VARCHAR (50),
Emp_City VARCHAR (20),
Emp_Salary INT NOT NULL, 
Emp_Bonus INT NOT NULL
) ;

以下SELECT查询显示了 Employee 表的数据:

SELECT * FROM Employee;
Employee_Id Emp_Name Emp_City Emp_Salary Emp_Bonus
101 Anuj Ghaziabad 35000 2000
102 Tushar Lucknow 29000 3000
103 Vivek Kolkata 35000 2500
104 Shivam Goa 22000 3000

下面的查询显示了Employee表中薪水为35000的员工的记录:

SELECT * FROM Employee WHERE Emp_Salary = 35000;

输出:

Employee_Id Emp_Name Emp_City Emp_Salary Emp_Bonus
101 Anuj Ghaziabad 35000 2000
103 Vivek Kolkata 35000 2500

以下查询更新Emp_Bonus为3000的员工的Emp_Salary:

UPDATE Employee SET Emp_Salary = 35000 WHERE Emp_Bonus = 3000;

要检查上述更新查询的结果,请编写以下语句:

SELECT * FROM Employee;

输出:

Employee_Id Emp_Name Emp_City Emp_Salary Emp_Bonus
101 Anuj Ghaziabad 35000 2000
102 Tushar Lucknow 35000 3000
103 Vivek Kolkata 35000 2500
104 Shivam Goa 35000 3000

以下查询删除了那些 Emp_City 值为 ‘Goa’ 的员工记录:

DELETE FROM Employee WHERE Emp_City = 'Goa';

SQL不等于运算符(!=

这种类型的比较运算符仅选择与指定值不匹配的表中的数据。

如果列的值与查询中指定的值不同,该运算符将返回数据库表中的TRUE行。

使用不等于运算符从表中访问数据的语法如下:

SELECT * FROM Table_Name WHERE Column_Name != Value;

更新表中数据使用不等号运算符的语法如下:

UPDATE Table_Name SET Column_Name = Value WHERE Field_Name != Value;

通过使用不等于运算符从表中删除数据的语法如下:

DELETE FROM Table_Name WHERE Field_Name != Value;

SQL不等于运算符的示例

以下的CREATE查询创建了具有四个字段的Cars表:

CREATE TABLE Cars
(
Car_Number INT PRIMARY KEY,
Car_Name VARCHAR (50),
Car_Price INT NOT NULL,
Car_AmountINT NOT NULL
) ;

以下INSERT查询将记录插入Cars表中:

INSERT INTO Cars (Car_Number, Car_Name, Car_Amount, Car_Price) 
VALUES (2578, Creta, 3, 1500000),
(9258, Audi, 2, 3000000), 
(8233, Venue, 6, 900000),
(6214, Nexon, 7, 1000000);

以下SELECT查询显示了 Car 表的数据:

SELECT * FROM Cars;
Car_Number Car_Name Car_Amount Car_Price
2578 Creta 3 900000
9258 Audi 2 1100000
8233 Venue 6 900000
6214 Nexon 7 1000000

下面的查询显示了Cars表中Car_Price不等于900000的车辆记录:

SELECT * FROM Cars WHERE Car_Price != 900000;

输出:

Car_Number Car_Name Car_Amount Car_Price
9258 Audi 2 1100000
6214 Nexon 7 1000000

以下查询更新那些Car_Number不等于9258或者Car_Amount不等于6的汽车的Car_Name:

UPDATE Cars SET Car_Name = 'Mercedes' WHERE Car_Number != 9258 OR Car_Amount != 6;

要检查上述UPDATE查询的结果,请编写以下语句:

SELECT * FROM Cars;

输出:

Car_Number Car_Name Car_Amount Car_Price
2578 Mercedes 3 900000
9258 Audi 2 1100000
8233 Venue 6 900000
6214 Mercedes 7 1000000

以下查询删除了Car_Name不等于Audi的汽车记录。

DELETE FROM Cars WHERE Car_Name != 'Audi';

SQL大于操作符(>

这种比较操作符仅选择、修改和删除表中大于查询中指定的值的数据。

使用大于操作符访问表中数据的以下语法:

SELECT * FROM Table_Name WHERE Column_Name > Value;

更新表中数据使用大于运算符的语法如下:

UPDATE Table_Name SET Column_Name = Value WHERE Column_Name > Value;

使用大于运算符从表中删除数据的语法如下:

DELETE FROM Table_Name WHERE Field_Name > Value;

SQL大于运算符示例

以下CREATE语句创建了Cars_Details表,包含四个字段:

CREATE TABLE Cars_Details
(
Car_Number INT PRIMARY KEY,
Car_Name VARCHAR (50),
Car_Price INT NOT NULL,
Car_AmountINT NOT NULL
) ;

以下INSERT查询将汽车记录插入到Cars_Details表中:

INSERT INTO Cars_Details (Car_Number, Car_Name, Car_Amount, Car_Price) 
VALUES (2578, Creta, 3, 1500000),
(9258, Audi, 2, 3000000), 
(8233, Venue, 6, 900000),
(6214, Nexon, 7, 1000000);

以下 SELECT 查询显示了 Cars_Details 表的数据:

SELECT * FROM Cars_Details;
Car_Number Car_Name Car_Amount Car_Price
2578 Creta 3 900000
9258 Audi 2 1100000
8233 Venue 6 900000
6214 Nexon 7 1000000

以下查询显示了那些Car_Number大于6000的汽车的记录:

SELECT * FROM Cars_Details WHERE Car_Number > 6000;

输出:

Car_Number Car_Name Car_Amount Car_Price
9258 Audi 2 1100000
8233 Venue 6 900000
6214 Nexon 7 100000

SQL 大于等于运算符 (>=)

此类型的比较运算符仅从表中检索、修改和删除大于或等于给定值的数据。

使用大于等于运算符从表中访问数据的语法如下所示:

SELECT Column_Name1, Column_Name2, ….., Column_NameN FROM Table_Name WHERE Column_Name >= Value;

使用大于等于运算符更新表中数据的语法如下所示:

UPDATE Table_Name SET Column_Name = Value WHERE Column_Name >= Value;

使用大于等于运算符从表中删除数据的语法如下所示:

DELETE FROM Table_Name WHERE Column_Name >= Value;

SQL大于等于运算符的示例

以下CREATE语句创建了包含五个字段的Student_Details表:

CREATE TABLE Student_Details
(
Student_ID INT PRIMARY KEY,
Student_Name VARCHAR (50),
Student_MathsINT NOT NULL,
Student_English INT NOT NULL, 
Student_Total_Marks INT NOT NULL
) ;

以下INSERT查询将学生的记录插入Student_Details表中:

INSERT INTO Student_Details (Student_ID, Student_Name, Student_Maths, Student_English, Student_Total_Marks) VALUES (201, Anuj, 30, 60, 90),
(202, Tushar, 25, 100, 125), 
(203, Vivek, 30, 90, 120),
(204, Shivam, 40, 80, 120);

以下SELECT查询显示了 Student_Details 表的数据:

SELECT * FROM Student_Details;
Student_Id Student_Name Student_Maths Student_English Student_Total_Marks
201 Anuj 30 60 90
202 Tushar 25 100 125
203 Vivek 30 90 120
204 Shivam 40 80 120

下面的查询显示了Student_Details表中总分大于等于120的学生的记录。

SELECT * FROM Student_Details WHERE Student_Total_Marks>= 120;

输出:

Student_Id Student_Name Student_Maths Student_English Student_Total_Marks
202 Tushar 25 100 125
203 Vivek 30 90 120
204 Shivam 40 80 120

SQL小于运算符(<

SQL中的这种比较运算符仅选择表中小于给定值的数据。

以下语法通过使用小于运算符从表中访问数据:

SELECT * FROM Table_Name WHERE Column_Name < Value;

使用小于运算符更新表中数据的语法如下:

UPDATE Table_Name SET Column_Name = Value WHERE Column_Name < Value;

使用“小于”运算符从表中删除数据的语法如下:

DELETE FROM Table_Name WHERE Field_Name < Value;

SQL Less Than操作符示例

以下CREATE语句创建了具有四个字段的Cars_Details表:

CREATE TABLE Cars_Details
(
Car_Number INT PRIMARY KEY,
Car_Name VARCHAR (50),
Car_Price INT NOT NULL,
Car_AmountINT NOT NULL
) ;

以下INSERT查询将车辆的记录插入到Cars_Details表中:

INSERT INTO Cars_Details (Car_Number, Car_Name, Car_Amount, Car_Price) 
VALUES (2578, Creta, 3, 1500000),
(9258, Audi, 2, 3000000), 
(8233, Venue, 6, 900000),
(6214, Nexon, 7, 1000000);

以下SELECT查询显示了 Cars_Details 表的数据:

SELECT * FROM Cars_Details;
Car_Number Car_Name Car_Amount Car_Price
2578 Creta 3 900000
9258 Audi 2 1100000
8233 Venue 6 900000
6214 Nexon 7 1000000

以下查询显示了Car_Amount小于6的汽车记录:

SELECT * FROM Cars_Details WHERE Car_Amount < 6;

输出:

Car_Number Car_Name Car_Amount Car_Price
2578 Creta 3 900000
9258 Audi 2 1100000

SQL小于等于运算符(<=

这种比较运算符仅选择表中小于或等于给定值的数据。

使用小于等于运算符访问表中数据的语法如下:

SELECT Column_Name1, Column_Name2, ….., Column_NameN FROM Table_Name WHERE Column_Name <= Value;

使用小于等于操作符更新表中数据的语法如下:

UPDATE Table_Name SET Column_Name = Value WHERE Column_Name <= Value;

在使用小于等于操作符从表中删除数据的语法如下:

DELETE FROM Table_Name WHERE Column_Name <= Value;

SQL小于等于运算符的示例

以下CREATE语句创建了具有五个字段的Student_Details表:

CREATE TABLE Student_Details
(
Student_Id INT NOT NULL,
Student_Name VARCHAR (50),
Student_MathsINT NOT NULL,
Student_English INT NOT NULL, 
Student_Total_Marks INT NOT NULL
) ;

以下是将记录插入Student_Details表的INSERT查询:

INSERT INTO Student_Details (Student_ID, Student_Name, Student_Maths, Student_English, Student_Total_Marks) VALUES (201, Anuj, 30, 60, 90),
(202, Tushar, 25, 100, 125), 
(203, Vivek, 30, 90, 120),
(204, Shivam, 40, 80, 120);

下面的SELECT查询显示了 Student_Details 表的数据:

SELECT * FROM Student_Details;
Student_Id Student_Name Student_Maths Student_English Student_Total_Marks
201 Anuj 30 60 90
202 Tushar 25 100 125
203 Vivek 30 90 120
204 Shivam 40 80 120

以下查询显示了Student_Details表中学生ID小于等于202的记录。

SELECT Student_Id, Student_Maths, Student_English, Student_Total_Marks FROM Student_Details WHERE Student_Id <= 202;

输出:

Student_Id Student_Maths Student_English Student_Total_Marks
201 30 60 90
202 25 100 125

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程