sql 查询快 C# 程序上查询慢 返回

SqlSugar
4 137

把C#上生成的语句放到在sql server上面执行秒出

在程序上执行就要16秒之久

以为是C#数据转换类型问题  试了bool 跟int都一样


2021/09/12 19:44:19-->time:00:00:14.5970800sql:  SELECT * FROM (SELECT [id],[title],[keywords],[description],[pic],[browseCount],[addTime],[classId],[isTop],[titleFontColor],[stars],[copyFrom],[summary],[titleFontType],[itemId],[author],ROW_NUMBER() OVER(ORDER BY [addTime] DESC) AS RowIndex  FROM [News]  WHERE ( [isTop] = @isTop0 )) T WHERE RowIndex BETWEEN 1 AND 16


isTop 实体上设置的是bool类型 数据库设置的bit

请问要怎么优化

热忱回答4

  • 先用 Where("[isTop]=1")  这种SQL方式硬编码的测试一下 ,如果SQL方式变快那么可能就是 参数化引起的性能差异

    0 回复
  • 另外查询加上 nolock

    0 回复
  • 如果还不行用sqlprofile拿出 去监控  数据库真实SQL执行时间,和  拿出真实的SQL去找原因

    0 回复
  • 好的  处理了 是其他原因造成 谢谢

    0 回复