查询将MB转换为GB值

时间:2016-05-20 13:30:49

标签: sql-server tsql

我正在尝试从查询中获取结果,该查询从Filesize列中获取结果。来自Filesize的值在转换时转换为MB值,现在我想做一个将该值转换为GB值的查询。这是我现在正在使用的查询

SELECT 
CAST(SUM(Filesize) / 1024 AS DECIMAL(10,2)) 
FROM infofile

如果你能提供帮助我会很感激

如果我使用查询

SELECT 
    SUM(FILESIZE)
    FROM infofile

我将得到它'1326278'的值,如果我将它除以1024给我1295(MB),我想用GB得到它,它会给我这个查询

    SELECT 
CAST(SUM(Filesize) / 1024 / 1024 AS DECIMAL(10,2))
FROM infofile 

1.00

3 个答案:

答案 0 :(得分:0)

以下查询将为您提供GB的大小: -

select CAST(SUM(cast(Filesize as float)) / 1024 / 1024 AS DECIMAL(10,2))

现在尝试它将提供所需的结果。

答案 1 :(得分:0)

要获得千兆字节,再将它除以1024.

SELECT 
CAST((SUM(Filesize) / 1024) / 1024 AS DECIMAL(10,2)) 
FROM infofile

或者,乘以1024 * 1024 = 1048576

所以表达式是:

SELECT 
CAST(SUM(Filesize) / 1048576 AS DECIMAL(10,2)) 
FROM infofile

答案 2 :(得分:0)

要获取小数点后的确切值,应将文件大小乘以1.0

SELECT 
CAST((SUM(Filesize)*1.0 / 1024) / 1024 AS DECIMAL(10,2)) 
FROM infofile