2014-01-23 66 views
0

的PATINDEX似乎並沒有在SQL Server CE 4.0的工作,我肯定是有錯誤的地方,從我個人而言,我可以在互聯網上表現patingdex其他地方看到的例子中的SQL Server CE工作。SQL CE 4 PATINDEX不工作

當我執行查詢

SELECT PATINDEX( '%[0-9]%', 'ABC123')AS表達式1 UNION ALL SELECT PATINDEX( '%[0-9]%',' 123456' )AS表達式1

我得到兩行用 「0」 值。

但是,如果我跑

SELECT PATINDEX( '%C%', 'ABC123')AS表達式1

我得到 「3」 作爲結果。我可以看到SQL CE 4.0似乎無法識別正則表達式。

請有人可以幫助我!

PS:我使用Visual Studio 2012與SQL Server CE在黃奇帆4.0

感謝,

阿倫

回答

0

我沒有看到PATINDEX支持正則表達式的任何版本: SQL Server精簡: http://technet.microsoft.com/en-us/library/ms174069.aspx SQL服務器:http://technet.microsoft.com/en-us/library/ms188395.aspx

+0

謝謝埃裏克。但無論如何,我只能過濾數字列嗎?我有一個表列類型nvarchar,並希望只提取列值爲數字的行。由於ISNumeric在CE中不可用,所以我正在使用Patindex。你有什麼建議嗎?。再次感謝! – user2003438

+0

你可能使用PATINDEX,字符串和數據長度的組合來過濾掉一些行,但你會stiil必須通過的TryParse來檢查代碼,如果該值是數字 – ErikEJ