2016-12-02 115 views
0

在我的LastName列中,我有一个名字或两个名字。在一些记录中,我在这两个名字之间有不止一个空白空间。SQL选择查询来选择具有多个空白空间的字段值?

我将不得不选择在字段名称中有多个空白空间的记录。

declare @nam nvarchar(4000) 
declare @nam1 nvarchar(4000) 

set @nam = 'sam' + ' ' + 'Dev' 
set @nam1 = 'ed' + ' ' + ' ' + 'Dev' 

在示例查询中,我期望输出值应该是@ nam1。

回答

2

可以使用LENREPLACE以取代从字符串的空间,然后得到original length - replaced length然后检查在WHERE条款,

SELECT * 
FROM 
    mytTable 
WHERE 
    LEN(LastName)-LEN(REPLACE(LastName, ' ', '')) > 1 
+0

谢谢@coderofcode,这种盲目修复该问题做到这一点。我需要生成一份受影响姓名/记录列表的报告。在我解决问题之前 – goofyui