Sql server 如何比较SQL Server中的软件版本

Sql server 如何比较SQL Server中的软件版本,sql-server,Sql Server,我的数据库中有一个表,其中包含所有安装在客户端的软件和版本 我需要准备一份报告给IT部门,建议有多少客户符合最新版本 下面是我的表格模式和数据: SoftwareText Versions Cognos TM1 Client ENU 10.2.0.1 R4 Cognos TM1 Client ENU 10.2.2 R1 Cognos TM1 Clients ENU 10.2.2 R2 Cognos TM1 C

我的数据库中有一个表,其中包含所有安装在客户端的软件和版本

我需要准备一份报告给IT部门,建议有多少客户符合最新版本

下面是我的表格模式和数据:

SoftwareText                Versions            
Cognos TM1 Client ENU       10.2.0.1 R4
Cognos TM1 Client ENU       10.2.2 R1
Cognos TM1 Clients ENU      10.2.2 R2
Cognos TM1 Clients ENU      10.2.2 R3 

Cognos TM1 Client DEU       10.2.2 R4
Cognos TM1 Clients DEU      10.2.3 R2
预期输出如下所示:

Over all Major Version is 10.2.3 R2
Over all Minor Version is 10.2.0.1 R4

Over all Major version in ENU is 10.2.2 R3
Over all Minor version in ENU is 10.2.0.1 R4

Over all Major version in DEU is 10.2.3 R2
Over all Minor version in DEU is 10.2.2 R4
请向阿奇夫建议

我尝试了下面的东西,但没有成功

SELECT
  VersionNumber,
RANK() OVER (ORDER BY VersionNumber) AS ReleaseOrder
FROM ReleaseHistory;

不能做什么?您所处的轨道是正确的,您也应该选择softwaretext,然后从此查询中选择。@您应该为其存储版本号或标识列的数字表示形式。如果这是一个一次性作业-使用前导零规范化主要/次要/发布/构建/修补程序编号,以便在每个位置上具有类似的数字编号。split-normalize-concat。感谢您的上述介绍。由于软件和版本集成来自不同的内部源,因此我需要在DWH中构建一个逻辑。如果你有一些逻辑要实现,请让我知道