我在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