gpt4 book ai didi

sql-server - TSQL "LIKE"还是正则表达式?

转载 作者:行者123 更新时间:2023-12-03 16:31:16 24 4
gpt4 key购买 nike

我在一个表中有一堆(750K)记录,我必须看到它们在另一个表中。第二张表有几百万条记录,数据是这样的:

源表9999-A1B-1234X , 中间部分可能长于三位数

目标表DescriptionPhrase9999-A1B-1234X(9 pages) - 是的,括号和单词在现场。

目前我正在运行一个加载源记录的 .net 应用程序,然后运行并搜索类似的(使用 tsql 函数)以确定是否有任何记录。如果是,则源表更新为正值。如果不是,则记录单独保留。

该应用程序每小时处理大约 1000 条记录。当我在 sql server 上作为游标 sproc 执行此操作时,我几乎获得了相同的速度。

如果正则表达式或任何其他方法能让它运行得更快,有什么想法吗?

最佳答案

如何在数据库中完成所有操作,而不是将记录拉入您的 .Net 应用程序:

UPDATE source_table s SET some_field = true WHERE EXISTS
(
SELECT target_join_field FROM target_table t
WHERE t.target_join_field LIKE '%' + s.source_join_field + '%'
)

这会将查询总数从 750k 次更新查询减少到 1 次更新。

关于sql-server - TSQL "LIKE"还是正则表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/458597/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com