📌  相关文章
📜  从字段中删除最后 N 个字符的SQL 查询

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

从字段中删除最后 N 个字符的SQL 查询

SQL代表结构化查询语言它用于与数据库通信。有一些标准的 SQL 命令,如“select”、“delete”、“alter”等。要从字段中删除最后 N 个字符,我们将使用字符串函数。

字符串函数:

它用于对输入字符串执行操作并返回输出字符串。有各种字符串函数,如 LEN(用于 SQL 服务器)、SUBSTR、LTRIM、TRIM 等。

要执行所需的函数,我们需要以下功能:

1. SUBSTRING():该函数用于从给定位置的字符串查找子字符串。它需要三个参数:

  • 字符串:它是必需的参数。它提供有关应用函数的字符串的信息。
  • 开始:它给出了字符串的起始位置。它也是必需的参数。
  • 长度:它是一个可选参数。默认情况下,它采用整个字符串的长度。

询问:



SUBSTRING('geeksforgeeks', 1, 5);

输出:

geeks

2. LEN():这种语法不是标准语法。对于不同的服务器,返回字符串长度的语法可能会有所不同。例如,LEN() 在 SQL server 中,LENGTH() 在 oracle 数据库中使用,等等。

它只需要一个参数,即您需要查找其长度的字符串。

询问:

LEN('geeksforgeeks')

输出:

13

要从字段中删除最后 N 个字符,我们将使用以下查询:

询问:

SUBSTRING(string, 0, length(string)-N)

这里,字符串表示字段,0表示字符串的开始位置和长度(字符串)-N表示字符串的长度。出于演示的目的,我们将在名为“geeks”的数据库中创建一个 demo_orders 表。



创建数据库:

使用以下 SQL 语句创建名为 geeks 的数据库:

使用数据库:

使用以下 SQL 语句将数据库上下文切换到 geeks:

表定义:我们的极客数据库中有以下 demo_table。

询问:

CREATE TABLE geeksforgeeks(FIRSTNAME VARCHAR(20),LASTNAME VARCHAR(20),CITY VARCHAR(20),
  AGE INT(2),GENDER VARCHAR(20));

将数据添加到 TABLE:使用以下语句将数据添加到 geeks for geeks 表:

询问:



INSERT INTO geeksforgeeks VALUES ('ROMY', 'Kumari', 'New Delhi', 22, 'female');
INSERT INTO geeksforgeeks VALUES ('Pushkar', 'jha', 'New Delhi', 23, 'male');
INSERT INTO geeksforgeeks VALUES ('Sujata', 'jha', 'Bihar', 30, 'female');
INSERT INTO geeksforgeeks VALUES ('Roshini', 'Kumari', 'Bihar', 16, 'female');
INSERT INTO geeksforgeeks VALUES ('Avinav', 'Pandey', 'New Delhi', 21, 'male');

查看表的内容:使用以下命令查看 geeks for geeks 表的内容:

询问:

SELECT * FROM geeksforgeeks;

现在要从字段中删除最后 N 个字符,我们将使用 geeks for geeks 表。下面是用于从字段中删除最后 N 个字符的 SUBSTRING()函数的语法。

句法:

示例:从 geeks for geeks 表的 FIRSTNAME 列中删除最后 2 个字符。

查询

SELECT SUBSTRING(FIRSTNAME,1,len(FIRSTNAME)-2) FROM geeks for geeks;

输出:

删除 country 列的最后 3 个字符,然后查看。

询问:

SELECT FIRSTNAME AS BEFORE, SUBSTRING(FIRSTNAME,1,len(FIRSTNAME)-3)AS AFTER FROM geeksforgeeks;

输出: