我有这条简单的线:
var records = db.MyDbTable.Where(x => x.SupplierId.HasValue).ToList();
而且执行需要一个小时。我表中有272行。该表有一列,NVARCHAR(MAX)里面有巨大的字符串。如何优化语句?之后在代码中,我有一个foreach,它会遍历记录并对其进行处理。
db中的select语句需要5分钟。
当我使用SQL事件探查器进行检查时,这是从C#转换而来的语句:
SELECT
[Extent1].[id] AS [id],
[Extent1].[xml] AS [xml],
[Extent1].[name] AS [name],
[Extent1].[create] AS [create],
[Extent1].[sale] AS [sale],
[Extent1].[SupplierId] AS [SupplierId],
[Extent1].[Success] AS [Success],
[Extent1].[IId] AS [IId]
FROM [dbo].[MyDbTable] AS [Extent1]
WHERE [Extent1].[SupplierId] IS NOT NULL
青春有我
相关分类