在我对表的请求中,我必须找到版本小于或等于10.0.1703(<= 10.0.1703)的版本的所有行,并且有很多版本.我使用SQL Server.结果中所需的行的示例是:
id | name | build(version)
--------------------------
1 | A | 10.0.1703
2 | B | 6.3.9600
Run Code Online (Sandbox Code Playgroud)
我必须找到所有旧版本或等于10.0.1703的版本.6.3.9600小于10.0.1703
它与这个问题有关,但提供的解决方案对我来说很难理解 如何比较使用SQL Server的软件版本?
一种方式是施展为 hierarchyid
WHERE CAST('/' + build + '/' AS HIERARCHYID) <= CAST('/10.0.1703/' AS HIERARCHYID)
Run Code Online (Sandbox Code Playgroud)