Sql server 在Azure MSSQL环境中,将字符串强制转换为数字失败
强制转换(A.version为整数) 正在失败,错误如下- SQL错误:243,SQLState:S0001 org.hibernate.engine.jdbc.spi.SqlExceptionHelper.logExceptions类型 signed不是已定义的系统类型 表A中的样本数据- 现在,我需要高级类别(key)下最新版本记录的密钥和版本 质疑- 从表A中选择A.key,MAX(强制转换(A.version为整数)),其中A.key(如“高级%”由A.key分组) 样本输出- 而同一查询在通用SQL server上运行良好。 “version”是一个字符串,我需要它来转换成一个数字。Sql server 在Azure MSSQL环境中,将字符串强制转换为数字失败,sql-server,hibernate,azure-sql-database,Sql Server,Hibernate,Azure Sql Database,强制转换(A.version为整数) 正在失败,错误如下- SQL错误:243,SQLState:S0001 org.hibernate.engine.jdbc.spi.SqlExceptionHelper.logExceptions类型 signed不是已定义的系统类型 表A中的样本数据- 现在,我需要高级类别(key)下最新版本记录的密钥和版本 质疑- 从表A中选择A.key,MAX(强制转换(A.version为整数)),其中A.key(如“高级%”由A.key分组) 样本输出- 而同一查
有人能帮我解决这个问题吗?请在实际查询中向我们展示一些数据,以及强制转换的上下文。请尝试强制转换的这种强制转换([A.version]作为整数)语法:强制转换(表达式作为数据类型[(长度)])@tim实际查询已内联更新。版本包含“1.0.0”、“1.2.5”、“2.0”等值。我正在尝试从“n”个记录中获取最高版本号,这些记录的“key”以“dummy”开头,并且“1342”作为“id”。这很困难,因为也存在颠覆。如果版本控制的深度是固定的(例如3),然后我建议对版本的每个数字组件使用单独的列。
id key version
1 'advanced/x' '1'
2 'advanced/x' '2'
3 'basic' '1'
key version
'advanced/x' '2'