Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 在SQL Server字符串中搜索其他表中的值_Sql Server_Substring_Udf_Patindex - Fatal编程技术网

Sql server 在SQL Server字符串中搜索其他表中的值

Sql server 在SQL Server字符串中搜索其他表中的值,sql-server,substring,udf,patindex,Sql Server,Substring,Udf,Patindex,我有一个列为name的表,其名称前后都有随机字符,即: 表A: Name ----------------- asd4345JONlkj345 .;lidDavidlksd$ Name ------ David Jon 我在同一数据库中有另一个表,它的名称是ie: 表B: Name ----------------- asd4345JONlkj345 .;lidDavidlksd$ Name ------ David Jon 对于30000

我有一个列为
name
的表,其名称前后都有随机字符,即:

表A

  Name
  -----------------
  asd4345JONlkj345
  .;lidDavidlksd$
 Name
 ------
 David
 Jon
我在同一数据库中有另一个表,它的名称是ie:

表B

  Name
  -----------------
  asd4345JONlkj345
  .;lidDavidlksd$
 Name
 ------
 David
 Jon
对于30000行,这是这样的,或者我只是快速地硬编码一些东西。我想在表A“名称”列中的每个字符串中搜索表B中的每个值,如果找到,则在新列中返回名称


我感觉这将是一个UDF,这很好,我只是不确定在这个场景中如何使用patindex,或者这是否是正确的方法

您只需要
LIKE
操作符即可:

select * 
from TableA
inner join TableB on TableA.Name like '%' + TableB.Name + '%'

您只需使用
LIKE
操作符即可:

select * 
from TableA
inner join TableB on TableA.Name like '%' + TableB.Name + '%'

我不明白在不到一分钟的时间里有人投了反对票,为什么?在这么短的时间内,人们怎么会有时间去理解这个问题呢?否决票并不是我投的,但我确信,这是因为现在还不清楚你到底想做什么。我们可以得到一般的感觉,但代码不是这样工作的。我们需要实际的细节。这里是一个让你的问题变得更好的好地方。我不明白在不到一分钟的时间里有人投了反对票,为什么?在这么短的时间内,人们怎么会有时间去理解这个问题呢?否决票并不是我投的,但我确信,这是因为现在还不清楚你到底想做什么。我们可以得到一般的感觉,但代码不是这样工作的。我们需要实际的细节。这里是一个让你的问题变得更好的好地方。根据描述,不需要使用like,just=应该可以。@urlreader如何使用an=“00000 david0000”与“David”匹配?我没有看到“名称前后的随机字符”,对此表示抱歉。根据描述,不需要使用like,just=应该可以。@urlreader如何匹配“00000 david0000”“David”只使用了一个=?我没有看到“名称前后的随机字符”,对此表示抱歉。