📌  相关文章
📜  从 SQL Server 中的字符串中删除所有空格

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

从 SQL Server 中的字符串中删除所有空格

在字符串前后存在空格的情况,我们可能需要删除/修剪空格以供使用。让我们看看它是如何在 SQL Server 中得到处理的。直到 SQL Server 2016,我们有称为 SQL LTRIM 和 SQL RTRIM 函数的函数。名称本身暗示 LTRIM 有助于删除最左边的空格,而 RTRIM 有助于删除最右边的空格。

从 SQL Server 2017 开始,我们还有 TRIM()函数,它使用单个函数修剪前导和尾随字符。在本文中,让我们详细介绍它们。

SQL LTRIM函数:

它从字符串的开头删除空格。我们可能在字符串前后有空格。通过使用 LTRIM()函数,我们可以删除最左边的空格。让我们使用 DATALENGTH()函数来计算使用 SQL LTRIM函数之前和之后的数据长度(以字节为单位)。结合所有这些,让我们看看下面的例子

询问:

DECLARE @gfgString VARCHAR(26)= 
        '     GeeksForGeeks       ';

SELECT @gfgString as OriginalString, 
       LTRIM(@gfgString) AS StringAfterLTRIM, 
       DATALENGTH(@gfgString) AS 'DataLength String (Bytes)', 
       DATALENGTH(LTRIM(@gfgString)) AS
       'DataLength String (Bytes) After LTRIM';

输出:



SQL RTRIM函数:

它从字符串的末尾(从右侧开始)删除空格。我们可能在字符串前后有空格。通过使用 RTRIM()函数,我们可以删除最右边的空格。让我们使用 DATALENGTH()函数来计算使用 SQL RTRIM函数之前和之后的数据长度(以字节为单位)。结合所有这些,让我们看看下面的例子

询问:

DECLARE @gfgString VARCHAR(26)=
        '     GeeksForGeeks       ';

SELECT @gfgString as OriginalString, 
       RTRIM(@gfgString) AS StringAfterRTRIM, 
       DATALENGTH(@gfgString) AS 'DataLength String (Bytes)', 
       DATALENGTH(RTRIM(@gfgString))
       AS 'DataLength String (Bytes) After RTRIM';

输出:

SQL TRIM()函数:

从 SQL Server 2017 开始,我们也有 TRIM() 功能。它删除字符串的开头空格和结尾空格。

询问:

DECLARE @gfgString VARCHAR(26)= 
        '     GeeksForGeeks       ';
SELECT @gfgString as OriginalString, 
       TRIM(@gfgString) AS StringAfterTRIM, 
       DATALENGTH(@gfgString) AS 'DataLength String (Bytes)', 
       DATALENGTH(TRIM(@gfgString))
       AS 'DataLength String (Bytes) After TRIM';

输出:



我们可以根据需要使用上述3个功能来删除空格。通常,要删除所有空格意味着,我们需要使用 TRIM()。我们也可以使用它来修剪列值。

询问:

use GEEKSFORGEEKS
SELECT AuthorName, LTRIM(AuthorName) as 'String after LTRIM', RTRIM(AuthorName) as 'String after RTRIM', 
TRIM(AuthorName) as 'String after TRIM' FROM Authors;

输出:

SQL Server 提供了许多字符串操作函数,在这里我们已经看到了用于删除空格的 LTRIM()、RTRIM() 和 TRIM() 函数。