今天在做数据库表转移的时候,A表转移到B表。要将A表的2010年1月到4月的数据转移到B表
首先在查询的时候的语句:
select
* from tellog
where convert(varchar(10),registerdate,120) between '2010-01-01' and '2010-04-30'
按照这种查询方式,当数据量小于1000条的时候性能影响不大,当数据量超过一千条,性能影响明显,原因是没一条数据都要做一个时间convert的函数转换
后来换成
select
count(*)
from tellog
where registerdate>= '2010-01-01 00:00:00.000' and registerdate <'2010-01-31 23:59:59.999'
性能提高很多。