![]() |
#2
czyzhuo2010-04-27 09:22
|
字段“时间”的值为时间数据,格式是2010-04-22 15:33:29之类的数据
我想查询table1里面从4月21日到4月22日的数据,使用下面的语句,很快10秒后就得出结果:
Select * from table1
where convert(varchar(10),时间,23) >='2010-04-21' and convert(varchar(10),时间,23) <='2010-04-22'
但我左接一个table2之后,就变得很慢,2个小时也出不了结果,不知道为什么:
Select * from
(Select * from table1
where convert(varchar(10),时间,23) >='2010-04-21' and convert(varchar(10),时间,23) <='2010-04-22') aa
left join table2
on aa.号码=table2.号码
上面提取的时间段是21、22日两天。如果我用上面同样的语句,把时间段设置为4月1日-4月22日,10多秒就出结果了,很奇怪。
请问高手这个问题是什么原因造成的?
Table1的数据有20万条记录,table2有800万条记录