我有一个后台作业(C# 控制台应用程序),它在 product_titleParts 表中连续插入数据。只需此作业从 products 表中选择前 100 个产品,将标题拆分为部分并插入到 product_titleParts 表中。
此表有一个名为“TitlePart”的索引列
另一方面,当我尝试从此表中进行选择时,SQL 查询需要很长时间。如果我在一段时间后停止控制台应用程序,查询需要 0 秒。一旦我再次启动控制台应用程序,再次选择查询无响应。
在插入另一个作业时从表中选择会导致任何缓慢?我在选择上使用 nolock 但没有帮助。
任何想法?
我在控制台应用程序上的代码:
if not exists(select 1 from product_titleParts where productid = @productid
and UserId = @userid and titlePart = @titlePart)
begin
insert into product_titleParts (userid, productid, titlePart)
VALUES (@userid, @productid, @titlePart)
end
我的选择代码:
select productid from product_titleParts
inner join products
on products.productid = product_titleParts.productid
where titlePart = @titlePart