我正在对除日期以外的字段的索引的表执行一些基于日期的大型删除查询.我被告知删除这些索引,执行删除,然后重新构建索引可能比仅对索引表运行删除更快.是这样的吗?
我可以看到为什么在没有索引的情况下实际删除记录会更快,但我觉得以后必须重建它的行为会否定所获得的任何速度优势.
为什么这些查询会返回不同的值?第一个返回结果集按预期,但第二个(据我所知,完全相同)不会.有什么想法吗?
1:
declare @c varchar(200)
set @c = 'columnName'
select top 1 *
from myTable
where @c is not null
and len(convert(varchar, @c)) > 0
Run Code Online (Sandbox Code Playgroud)
2:
SELECT top 1 *
FROM myTable
WHERE columnName IS NOT NULL
and len(convert(varchar,columnName)) > 0
Run Code Online (Sandbox Code Playgroud)