sql – 在字符串的开头和结尾计算空格(ASCII代码32)

我正在努力解决以下问题.我有一个包含这种数据的专栏:
'abbb ccc   '
'    aaa abbb ccc'
'abbb ccc   '
'   aaa abbb ccc   '
'   ccc'
'aaa abbb'

我想计算左边的空格数和每个字符串右边的空格数.

解决方法

尝试使用LEN,LTRIM和REVERSE的组合:
SELECT
    LEN(col) - LEN(LTRIM(col)) AS num_left,LEN(REVERSE(col)) - LEN(LTRIM(REVERSE(col))) AS num_right
FROM yourTable;

Demo

正如@AaronDietz在下面的评论中提到的,LEN实际上也修剪了右边的空白.但是LEN不影响领先的空白.为了弥补这一点,我们可以反转字符串,然后使用LTRIM进行计算.

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...