如何在子查询中使用 IN 运算符?
SQL 中的输入运算符允许在 WHERE 子句中指定多个值,它可以帮助您轻松测试表达式是否匹配值列表中的任何值。IN 运算符的使用减少了在 SELECT、INSERT、UPDATE 和 DELETE 等语句中对多个 or 条件的需求。
子查询:
一个或多个 SELECT 语句与另一个 SELECT 语句的 where 子句嵌套在一起的 SQL 查询称为子查询。这类查询的第一个语句称为外部查询,其中内部查询称为内部查询。在执行这样的查询时,将首先评估内部查询,外部查询接收内部查询的值。
现在,我们将为我们的数据库创建一个模式,并将其命名为极客。之后,我们将在其中创建一个名为 geeks_data 的表,并在子查询中使用 IN 运算符。
步骤 1: 创建数据库
为了创建数据库,我们需要使用 CREATE 运算符。
查询:
CREATE DATABASE geeksforgeeks;
输出:
图:创建数据库
步骤 2: 在数据库中创建一个表
在这一步中,我们将在极客数据库的极客中创建两个表极客 _ 数据和极客 _ 部门。
- 创建极客数据表:
查询:
CREATE TABLE geeks_data(id INT,
first_name VARCHAR(255),
last_name VARCHAR(255),
dept VARCHAR(255),
PRIMARY KEY(id));
图:创建极客数据表
- 创建极客 _ 部门表:
查询:
CREATE TABLE geeks_dept(id INT,
dept_name VARCHAR(255),
PRIMARY KEY(id));
图:创建一个表格极客 _ 部门
步骤 3: 将数据插入表格
为了在数据库中插入数据,我们需要使用 insert 操作符。首先,我们将把它插入 geeks_data 表。
查询:
INSERT INTO geeks_data VALUES
(1, 'Chandan', 'Mishra', 'Mechanical'),
(2, 'Abhinav', 'Singh', 'Electronics'),
(3, 'Utkarsh', 'Raghuvanshi', 'Computer Science');
图:在极客数据表中插入值
输出:
图:极客数据
现在我们将插入表 geeks_dept 的数据。
INSERT INTO geeks_dept VALUES (1, 'Computer Science'),
(2, 'Electronics'),
(3, 'Computer Science'),
(4, 'Mechanical');
图:将数据插入极客部门
输出:
图:极客 _ 部门
步骤 4: 在子查询中执行输入运算符
在这一步中我们将尝试从 geeks_data 表中找出 geeks 的数据,那些来自计算机科学系的人借助 geeks_dept 表使用子查询。
查询:
SELECT first_name, last_name FROM geeks_data WHERE dept IN
(SELECT dept_name FROM geeks_dept WHERE id = 1);
我们将得到来自计算机科学系的极客的名和姓。
输出:
图:子查询中输入运算符的结果
版权属于:月萌API www.moonapi.com,转载请注明出处