SQL2008一个字段的查询问题,非常奇怪。
数据库:SQL2008R2
字段:isnew nchar(10) (允许NULL值) 其中的数据要么是NULL , 要么是1
数据量:30万
语言:asp
sql查询语句:
sql="1=1"时,列表和分页速度都很快
而以下这三种的列表速度非常非常非常慢,直到出现超时。。。。(符合条件的数据是3万多条)
sql="1=1 and isnew='1'" (耗时58,969毫秒 查询到34435条记录 每页60个记录)
sql="1=1 and isnew=1" (耗时50,031毫秒 查询到34435条记录 每页60个记录)
sql="1=1 and isnew IS NOT NULL" (耗时61,484毫秒毫秒 查询到34435条记录 每页60个记录)
但是,更为复杂的查询语句,速度却很快。
sql="1=1 and CONTAINS(name,'"张"') and CONTAINS(sex,'"男"')"
于是我吧isnew字段也做了全文索引,按照全文索引的语句写:
sql="1=1 and CONTAINS(isnew,'1')" 结果查询结果为:暂无记录!!!!
这个isnew字段的查询为什么这么难,这么慢呢?该怎么写呢?是索引的问题吗?