我在Excel中有一个工作表。其中一列(“ID”)包含值为1.01,1.02,1.03,2.01,3.01,3.04等的字符串。Excel和SQL:如何将字符串转换为Select语句中的双精度
我想获取该表中的所有行,其中“ID”>> =某些值使用SQL语句和ADO 连接(来自VBScript代码)。 所以,我有两个问题:
1)我可以将ID的值转换为SQL中的double值吗?那么,我可以将值作为浮点数进行比较,并应用<和>条件。 2)我可以在Excel工作簿的select语句中使用宏吗?
我在Excel中有一个工作表。其中一列(“ID”)包含值为1.01,1.02,1.03,2.01,3.01,3.04等的字符串。Excel和SQL:如何将字符串转换为Select语句中的双精度
我想获取该表中的所有行,其中“ID”>> =某些值使用SQL语句和ADO 连接(来自VBScript代码)。 所以,我有两个问题:
1)我可以将ID的值转换为SQL中的double值吗?那么,我可以将值作为浮点数进行比较,并应用<和>条件。 2)我可以在Excel工作簿的select语句中使用宏吗?
我找到了解决办法:如果我投列整数,我有同样的效果,所以,我使用CInt函数:
Select * from ["&strSheetName&"$] where CInt(TestCaseId) >= " & abs (strRow)
尝试
WHERE CONVERT (ID, FLOAT) >= value
的CAST
到FLOAT
功能是CDbl()
例如
SELECT CDbl(ID) AS ID_float
FROM [Sheet$];
注DOUBLE
是FLOAT
的代名词,因此收缩C
AST到D
欧bl
Ë
这是行不通的,错误:“[微软] [ODBC Excel驱动程序]语法错误(缺少操作员)查询表达式'Cast(TestCaseId as Float)> 20.01'“。 SQL语句:从[Main $]中选择Cast(TestCaseId as Float)> 20.01 – vmg 2011-01-06 15:16:12
也许查询对于在大于号之前没有空格这一事实很敏感? – Alain 2011-01-06 15:20:22