什么是系统表master..spt_values的目的是什么?
为什么提供它以及如何使用它?
它的类型,低值,高值的含义是什么?
更新:
Google搜索提供了数千个"其用途",例如:
一些帖子警告它的使用,因为它可以在SQL Server的未来版本中删除,但已经有代码脚本使用它来说明新SQL Server 11(Denali)的新功能:
我试图在MySQL数据库中改进搜索类似图像的pHashed.现在我比较pHash计算汉明距离像这样:
SELECT * FROM images WHERE BIT_COUNT(hash ^ 2028359052535108275) <= 4
Run Code Online (Sandbox Code Playgroud)
选择结果(引擎MyISAM)
因此查询时间增加取决于表中的行数.
我还尝试在SQL上的二进制字符串上的stackoverflow 汉明距离上找到解决方案
SELECT * FROM images WHERE
BIT_COUNT(h1 ^ 11110011) +
BIT_COUNT(h2 ^ 10110100) +
BIT_COUNT(h3 ^ 11001001) +
BIT_COUNT(h4 ^ 11010001) +
BIT_COUNT(h5 ^ 00100011) +
BIT_COUNT(h6 ^ 00010100) +
BIT_COUNT(h7 ^ 00011111) +
BIT_COUNT(h8 ^ 00001111) <= 4
Run Code Online (Sandbox Code Playgroud)
行300000; 查询时间~240ms
我将数据库引擎更改为PostgreSQL.将此MySQL查询转换为PyGreSQL但 没有成功.行300000; 查询时间〜18s
有优化上述查询的解决方案吗? 我的意思是优化不依赖于行数.
我有限的方法(工具)来解决这个问题.MySQL到目前为止似乎是最简单的解决方案,但我可以在每个开源数据库引擎上部署代码,该引擎将在专用机器上使用Ruby.有一些针对MsSQL的现成解决方案/sf/answers/415166111/(未经测试).也许有人知道如何为MySQL或PostgreSQL翻译它.
请根据一些代码或观察结果发布答案.我们在stackoverflow.com上有很多关于汉明距离的理论问题
谢谢!