1

EXCEL VBA 中的此选择会导致 Excel 中的数字格式:

strSQL = "SELECT * FROM OPENQUERY(dtb, 'SELECT col from table')"

但是,如果我在列上创建一些函数,它会在 Excel 中以文本格式生成:

strSQL = "SELECT * FROM OPENQUERY(dtb, 'SELECT sum(col) from table')"
strSQL = "SELECT * FROM OPENQUERY(dtb, 'SELECT col*1.0  from table')"
strSQL = "SELECT * FROM OPENQUERY(dtb, 'SELECT col-1    from table')"

我试过了to_number(...)to_number(to_char(...))但没有帮助。

为什么?我该如何解决这种情况?

解决方案(使用 SQL 服务器强制转换函数将列转换为数字)

strSQL = "SELECT cast(col# as numeric(10, 2)) col# " _
         "FROM OPENQUERY(dtb, 'SELECT sum(col) col# from table')"
4

1 回答 1

0

解决方案(使用 SQL 服务器强制转换函数将列转换为数字)

strSQL = "SELECT cast(col# as numeric(10, 2)) col# " _
         "FROM OPENQUERY(dtb, 'SELECT sum(col) col# from table')"
于 2012-10-12T13:04:08.407 回答