Oracle不等于多个值利用not in操作符实现(oracle不等于多个值)

Oracle不等于多个值利用not in操作符实现

在Oracle数据库中,我们常常需要查询不等于多个值的数据,这个时候我们可以使用not in操作符来实现。

not in操作符用于筛选不在指定列表中的数据,其语法如下:

“`sql

SELECT column1, column2, …

FROM table_name

WHERE column_name NOT IN (value1, value2, …);


其中,column_name为需要筛选的列名,value1, value2等为不允许出现的值。

下面我们通过一个示例来说明如何使用not in操作符来查询不等于多个值的数据。我们创建一个名为students的表,其中包含id和name两个字段。

```sql
CREATE TABLE students (
id INT PRIMARY KEY,
name VARCHAR(50) NOT NULL
);

INSERT INTO students (id, name) VALUES (1, 'Tom');
INSERT INTO students (id, name) VALUES (2, 'Jerry');
INSERT INTO students (id, name) VALUES (3, 'John');
INSERT INTO students (id, name) VALUES (4, 'Mary');
INSERT INTO students (id, name) VALUES (5, 'Jane');
INSERT INTO students (id, name) VALUES (6, 'Peter');
INSERT INTO students (id, name) VALUES (7, 'Kate');

接下来,我们使用not in操作符查询不等于多个值的数据,例如查询不是Tom、Jerry、John和Kate的学生信息。

“`sql

SELECT * FROM students WHERE name NOT IN (‘Tom’, ‘Jerry’, ‘John’, ‘Kate’);


执行上述SQL语句后,我们可以得到以下结果:

id | name

—-|——-

4 | Mary

5 | Jane

6 | Peter


在以上示例中,我们使用了not in操作符来查询不等于多个值的数据。同时,我们也可以使用其他比较操作符,例如、!=等来实现相同的功能。例如,以下两个SQL语句功能相同:

```sql
-- 使用not in操作符
SELECT * FROM students WHERE name NOT IN ('Tom', 'Jerry', 'John', 'Kate');

-- 使用操作符
SELECT * FROM students WHERE name 'Tom' AND name 'Jerry' AND name 'John' AND name 'Kate';

总结:

通过使用not in操作符,我们可以方便地查询不等于多个值的数据。在实际开发中,我们可以将该操作符应用于复杂的查询条件中,以达到更加精准的数据筛选。


数据运维技术 » Oracle不等于多个值利用not in操作符实现(oracle不等于多个值)