之前在程序中验证记录是否存在,总是用select count(0) from table1的到记录数,然后在比对
今天做的页面中需要验证此类信息3此,所以就像有没有性能更好的办法
思考count的工作原理后感觉是读取所有数据后进行统计的
而使用top 1 会不会只是取得第一个纪录后就跳出查询呢?
正好手头上又朋友上次做实验制作的一个300万记录的表,我就用来做了下实验
首先是
select count(0) from table1
执行时间 两次分别是 3秒,1秒
select top 1 0 from table1
两次执行时间都为0秒
exists( select 0 from table1)
两次都为0秒
当使用数据库中的某个字段来做验证时(特别是字符串型)的更明显
以上只是本人做的一个小小实验,如果哪里不合理大家多多指证,写的不好大家别丢石子就行了