📜  如何在 SQL Server 中比较两列是否相等?

📅  最后修改于: 2022-05-13 01:55:16.757000             🧑  作者: Mango

如何在 SQL Server 中比较两列是否相等?

在 SQL 中,问题要求我们比较两列的相等性以达到某些期望的结果。这可以通过在要比较的 2 个列名称之间使用 =(equal to)运算符来实现。对于本文,我们将使用 Microsoft SQL Server 作为我们的数据库。

句法:

SELECT * FROM TABLE_NAME WHERE COLUMN1_NAME=COLUMN2_NAME;

有一张表叫 COLLEGE。该表由教授姓名、教授当前教授的学科和教授专攻的学科组成。然后学院院长决定提拔部分教授担任院长一职,但条件是他们目前的学科要与教授的专业学科相匹配。创建一个表并编写一个 SQL 查询来演示这一点。

第 1 步:创建数据库。为此,请使用以下命令创建一个名为 GeeksForGeeks 的数据库。

询问:

CREATE DATABASE GeeksForGeeks

输出:

第 2 步:使用 GeeksForGeeks 数据库。为此,请使用以下命令。

询问:

USE GeeksForGeeks

输出:

第 3 步:在 GeeksForGeeks 数据库中创建一个表 COLLEGE。该表有 3 列,即 PROF_NAME、CURR_SUBJ 和 SPEC_SUBJ,分别包含教授姓名、他/她正在教授的当前学科和他/她专攻的学科。

询问:

CREATE TABLE COLLEGE(
PROF_NAME VARCHAR(20),
CURR_SUBJ VARCHAR(20),
SPEC_SUBJ VARCHAR(20));

输出:

第 4 步:显示 COLLEGE 表的结构。

询问:

EXEC SP_COLUMNS COLLEGE;

输出:

第 5 步:在 COLLEGE 表中插入 5 行。

询问:

INSERT INTO COLLEGE VALUES('BHARGAV','ELECTRO','FLUIDS');
INSERT INTO COLLEGE VALUES('ABHISHEK','SOFTWARE','SOFTWARE');
INSERT INTO COLLEGE VALUES('SUDHARSHAN','TRANSFORMERS','CIRCUITS');
INSERT INTO COLLEGE VALUES('RAKESH','ORGANIC','ORGANIC');
INSERT INTO COLLEGE VALUES('DEEPAK','OOPS','ALGORITHMS');

输出:

第 6 步:显示 COLLEGE 表的所有行。

询问:

SELECT * FROM COLLEGE;

输出:

步骤7:显示可以晋升为院长的教授的详细信息,即当前学科应与专业学科相匹配。

询问:

SELECT * FROM COLLEGE WHERE CURR_SUBJ=SPEC_SUBJ;

输出:

因此,通过上述方式,我们可以在需要时比较 SQL 中任意两列的相等性。