SQL 即使我不使用 ABS(),MAX() 函数也会选择绝对值最大的?

SQL MAX() function selects the greatest in absolute value even if I don't use ABS()?

我正在尝试获取列的最大值,它返回绝对值的最大值。例如,假设我们有 TABLE:

 TAG | VALUE
-------------
  A  |  1.5
  B  | -3.0
  C  |  0.5
  D  |  2.0
  E  | -2.5

我正在做的查询很简单

SELECT TAG, MAX(VALUE)
FROM TABLE
GROUP BY TAG

但是我得到的结果是

-3.0

从技术上讲,这是最高的绝对值,但不是最高的总体值 (2.0)。此 VALUE 字段存储为 nvarchar(255),我没有 table 本身的编辑权限。也许我可以在新查询中更改它的格式(假设可以解决问题)?

SELECT TAG, MAX(cast(VALUE as decimal(10,1)))
FROM TABLE
GROUP BY TAG