SQL Server - 部分字符串匹配 - 不同表的两列

发布于 2024-10-08 01:12:15 字数 649 浏览 4 评论 0原文

我需要 SQL Server 的查询(或更确切地说是存储过程),其中我需要比较具有以下结构的两个不同表的数据

表 1

ID       Text       Table2ID
1        Chris   
2        John
3        Paul

表2

ID       Text
1        Mitchell Johnson
2        Chris Martin
3        Steven

通过比较上面的内容两个表,我需要从 table2 获取“ID”并将其插入第一个表的“Table2ID”列

比较标准:-

“Table1”的“文本”列中的完整单词应该是包含在“Table2”的“Text”列中

在我们的例子中,我们将从 table2 中获取前两行的“ID”(因为单词 John 包含在“Mitchell Johnson”中,单词 Chris 包含在“Chris Martin”中,并且Paul 未包含在“表 2”中)

我怎样才能实现这一目标?如果这里有人能够照亮我的道路,那就太好了

问候, 拉古拉曼V

I am in need of a query (or stored procedure rather) for SQL Server wherein I need compare data of two different tables with the following structure

Table 1

ID       Text       Table2ID
1        Chris   
2        John
3        Paul

Table2

ID       Text
1        Mitchell Johnson
2        Chris Martin
3        Steven

By comparing the above two tables, I need to get the 'IDs' from table2 and insert them into the 'Table2ID' column of first table

Comparison criteria:-

The full word in 'Text' column of 'Table1' should be contained in 'Text' column of 'Table2'

In our case, we would obtain 'IDs' of first two rows from table2 (since the word John is contained in 'Mitchell Johnson' and the word Chris is contained in 'Chris Martin' and Paul is not contained in 'Table2')

How could I achieve this? It would be nice if someone out here is able to shed light on my path

Regards,
Raghuraman.V

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

我的黑色迷你裙 2024-10-15 01:12:16

抽象的答案是:

UPDATE Table
SET Table.col1 = other_table.col1
FROM Table
INNER JOIN other_table ON Table.id = other_table.id

具体来说:

update Table1
set Table1.Table2ID = Table2.ID
from Table1
inner join Table2 on Table2.Text like '%' + Table1.Text + '%'

The abstract answer is:

UPDATE Table
SET Table.col1 = other_table.col1
FROM Table
INNER JOIN other_table ON Table.id = other_table.id

Specifically:

update Table1
set Table1.Table2ID = Table2.ID
from Table1
inner join Table2 on Table2.Text like '%' + Table1.Text + '%'
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文