📜  如何从 SQL Server 中的字段中删除前缀?

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

如何从 SQL Server 中的字段中删除前缀?

在 SQL 中,某些字是保留的。这些称为关键字或保留字。这些词不能用作标识符,即 SQL 中的列名。但是,这条规则也有一个例外。在本文中,我们将讨论如何在 SQL 中使用保留字作为列名,以及如何从字段中删除前缀。对于本文,我们将使用 Microsoft SQL Server 作为我们的数据库。

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

询问:

CREATE DATABASE GeeksForGeeks

输出:

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

询问:

USE GeeksForGeeks

输出:

第三步:在 GeeksForGeeks 数据库中创建一个 FLIGHT 表。该表有 3 列,即 PASSENGER_NAME、SEAT_NO 和 DESTINATION,其中包含乘坐航班的乘客的姓名、座位号、工资和目的地。

询问:

CREATE TABLE FLIGHT(
PASSENGER_NAME VARCHAR(20),
SEAT_NO INT,
DESTINATION VARCHAR(10));

输出:

第 4 步:描述表 FLIGHT 的结构。

询问:

EXEC SP_COLUMNS FLIGHT;

输出:

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

询问:

INSERT INTO FLIGHT VALUES('MR. MR. VINAYAK',11,'DEL');
INSERT INTO FLIGHT VALUES('MR. MR. SINGH',06,'BOM');
INSERT INTO FLIGHT VALUES('MR. MR. KHAN',32,'KOL');
INSERT INTO FLIGHT VALUES('MR. MR. SHARMA',25,'CHD');
INSERT INTO FLIGHT VALUES('MR. MR. KUMAR',16,'LKO');

输出:

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

询问:

SELECT * FROM FLIGHT;

输出:

第 7 步:FLIGHT表中可以看出,一个额外的MR。由于笔误,已在PASSENGER_NAME列的所有条目的开头添加。要删除 ' MR. ',我们需要使用关键字UPDATESETRIGHTLENWHERE 。以下命令更新以 ' MR 开头的列的条目。 ' 带有使用RIGHT关键字提取的名称的子字符串。子字符串从等于前缀长度(' MR. '=4 的长度)的索引开始到字符串的结尾。

句法:

UPDATE TABLE_NAME
SET COLUMN_NAME = RIGHT(COLUMN_NAME,LEN
COLUMN_NAME)-LENGTH OF PREFIX TO BE REMOVED)
WHERE COLUMN_NAME LIKE 'PREFIX%';

询问:

UPDATE FLIGHT
SET PASSENGER_NAME = RIGHT
(PASSENGER_NAME,LEN(PASSENGER_NAME)-4)
WHERE PASSENGER_NAME LIKE 'MR. %';

输出:

步骤 8:显示校正后的 FLIGHT 表的所有行。

询问:

SELECT * FROM FLIGHT;

输出: