sql-server – 比较整数和比较字符串的性能差异

前端之家收集整理的这篇文章主要介绍了sql-server – 比较整数和比较字符串的性能差异前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
比较时,任何人都可以提供具体的表现
int = int

和:

string = string

在MS-sql中的WHERE子句中.

例如

select *
from Samples
where SamplesID = 5

和:

select *
from Samples
where Name = 'Shampoo'

有差异还是表现相同?

解决方法

好的有趣的问题总是把它看作是整数更快,从来没有实际测试过.我从我的数据中将1M随机姓名和类型从联系人列表中导入到没有索引或主键的原始数据的临时数据库中.没有对我的数据范围进行测量,任何一列都没有被标准化,所以反映了我的数据库的现实,而不是纯统计集.
select top 100 * from tblScratch where contactsurname = '<TestSurname>' order by NEWID()
select top 100 * from tblScratch where contacttyperef = 1-22 order by NEWID()

Newid是每次都随机列出数据列表.快速运行20个姓氏和20种类型.查询的姓氏比ref然后姓氏.搜索参考号码几乎快4倍,使用约1/2,所以几年前这些书是正确的.

字符串 –
SELECT TOP 100 * FROM tblScratch WHERE contactsurname =’hoare’ORDER BY NEWID()

Duration 430ms
Reads 902
cpu 203

整数 –
SELECT TOP 100 * FROM tblScratch WHERE contacttyperef = 3 ORDER BY NEWID()

Duration 136ms
Reads 902
cpu 79
原文链接:https://www.f2er.com/mssql/83045.html

猜你在找的MsSQL相关文章