SQL 不等于运算符是比较运算符,用于检查两个表达式是否相等。该运算符由“ != ” 或 “<>”。
该运算符返回布尔值。如果给定表达式相等,则运算符返回错误的否则真的。如果任一表达式为 NULL,则返回 NULL。当表达式具有不同数据类型时,它会执行类型转换,例如 5!= “Five”。
我们使用 NOT EQUAL 运算符来显示没有一些异常值的表。例如, 让我们,考虑一张表格'学生'。对于这张表,我们有,“id”, “name”和“marks”作为它的列。现在我们要显示除 “100” 之外的所有标记行。在这种情况下,可以使用 NOT EQUAL 运算符。
Note: <> and != perform the same operation i.e. check inequality. The only difference between <> and != is that <> follows
the ISO standard but != does not. So it is recommended to use <> for NOT EQUAL Operator.
在本文中,我们将探讨SQL 中的 NOT 运算符并附有适当的示例和简短的解释。
SQL NOT EQUAL 语法
SELECT * FROM table_name
WHERE column_name != value;
演示 SQL 数据库
在本关于 NOT EQUAL 运算符的教程中,我们将使用下表作为示例,并查看 SQL 查询中的 NOT EQUAL 运算符。
user_id | 名字 | contest_score | 秩 | coding_streak |
---|---|---|---|---|
vish3001 | Vishu | 100 | 1 | 150 |
neeraj119 | Neeraj | 99 | 2 | 125 |
ayush105 | Aayush | 98 | 3 | 110 |
sumit85 | Sumit | 99 | 2 | 100 |
harsh05 | Harsh | 98 | 3 | 95 |
要在您的系统中创建此表,请在 DBMS 中编写以下 SQL 查询;
CREATE TABLE geeksforgeeks(
user_id varchar(100) PRIMARY KEY,
name varchar(100),
contest_score int,
rank int,
coding_streak int
);
INSERT INTO geeksforgeeks(user_id,name,contest_score,rank,coding_streak)
VALUES('vish3001','Vishu',100,01,150);
INSERT INTO geeksforgeeks(user_id,name,contest_score,rank,coding_streak)
VALUES('neeraj119','Neeraj',99,02,125);
INSERT INTO geeksforgeeks(user_id,name,contest_score,rank,coding_streak)
VALUES('ayush105','Aayush',98,03,110);
INSERT INTO geeksforgeeks(user_id,name,contest_score,rank,coding_streak)
VALUES('sumit85','Sumit',99,02,100);
INSERT INTO geeksforgeeks(user_id,name,contest_score,rank,coding_streak)
VALUES('harsh05','Harsh',98,03,95);
不等于运算符示例
让我们看一下 SQL 中 NOT EQUAL 运算符的一些示例。我们将介绍如何使用 SQL NOT OPERATORWHERE 条款。
示例 1:对于字符串的 SQL NOT 运算符
我们将显示名称不等于“Harsh”的所有行
SELECT * FROM geeksforgeeks WHERE name!='Harsh';
输出:
SQL NOT 运算符对于字符串
在上图中,我们可以看到显示了所有名称不等于“Harsh”的行。
Note: The NOT EQUAL comparison is case-sensitive for strings. Meaning “geeks” and “GEEKS” are two different strings for NOT EQUAL operator.
示例 2:具有多个条件的 SQL NOT EQUAL 运算符
我们将显示所有竞赛得分不为 98、排名为 3 且编码条纹应大于或等于 100 的行。使用与或或运算符 您可以对多个值使用 SQL NOT 运算符。
SELECT * FROM geeksforgeeks
WHERE contest_score != 98 AND rank != 3
AND coding_streak >= 100;
输出:
具有多个条件的 SQL NOT EQUAL 运算符
在上图中,我们可以观察到所有符合所有三个条件的行都被显示。
示例 3:带有 GROUP BY 子句的 SQL NOT EQUAL 运算符
我们将显示所有那些比赛得分不为 100 的排名及其计数。
SELECT rank, COUNT(*) as count_score
FROM geeksforgeeks
WHERE contest_score <> 100
GROUP BY rank;
输出:
SQL NOT EQUAL 运算符与 GROUP BY 子句
在上图中,我们可以看到排名 2 和 3 的计数分别为 2 和 2。
Also Read: EQUAL Operators in SQL
关于 NOT EQUAL 运算符的要点
- SQL NOT EQUAL Operator is a comparison operator denoted as != or <>. It returns boolean values i.e. True or False.
- It returns False when the compared expressions are equal otherwise it returns True.
- We use this operator with the WHERE clause.
- We can use this operator for integers and strings-based logical reasoning. It is case-sensitive for string comparisons.
- We can put multiple conditions using the AND or OR operator.
相关用法
- SQL NOT用法及代码示例
- SQL NUMERIC转NVARCHAR用法及代码示例
- SQL Datetime转Date用法及代码示例
- SQL Date转Datetime用法及代码示例
- SQL LTRIM()用法及代码示例
- SQL UPPER()用法及代码示例
- SQL RTRIM()用法及代码示例
- SQL FLOAT转NVARCHAR用法及代码示例
- SQL Datetime转Epoch用法及代码示例
- SQL Epoch Time转Date用法及代码示例
- SQL Datetime转String用法及代码示例
- SQL VARCHAR转INT用法及代码示例
- SQL IN用法及代码示例
- SQL IS NOT NULL用法及代码示例
- SQL IS NULL用法及代码示例
- SQL LIKE用法及代码示例
- SQL DROP和TRUNCATE的区别用法及代码示例
- SQL Server CHARINDEX()用法及代码示例
- SQL Server DIFFERENCE()用法及代码示例
- SQL Server IIF()用法及代码示例
- SQL Server ASCII()用法及代码示例
- SQL Server LOG()用法及代码示例
- SQL Server LOG10()用法及代码示例
- SQL Server ATN2()用法及代码示例
注:本文由纯净天空筛选整理自vishuvaishnav3001大神的英文原创作品 SQL NOT EQUAL Operator。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。