SQL没有从数据集返回所需的最大版本



我有这个数据集,例如:

<表类> 名称 版本 tbody><<tr>第一个1.2.1 "第一个1.2.2第二1.2.0第二1.2.231.3.131.3.2第五1.0.1第五1.2.2第四道明>第四1.2.2

在Spark SQL上,您可以使用transform来获得一个整数数组,例如[1, 12, 0]1.12.0,然后您可以获得每个名称的最大数组,并将它们与.连接以获得原始版本号。

select 
Name, 
concat_ws('.', max(transform(split(Version, '\.'), x -> int(x)))) as Version 
from mytable 
group by Name

您可以在您的查询中使用HierarchyIdin。

select Name,Max(Version) as Version from table order by
CAST('/'+Version+'/' as hierarchyID)

此解决方案应适用于SQL server2008

相关内容

  • 没有找到相关文章

最新更新